Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

addr2line: update to match newer binutils #155

Merged
merged 1 commit into from
Jan 8, 2020

Conversation

philipc
Copy link
Contributor

@philipc philipc commented Dec 22, 2019

Somewhere between version 2.22 and 2.30, the binutils addr2line output for unknown lines changed from "??:0" to "??:?".

@kentfredric Can you check this fixes the tests for you?

@coveralls
Copy link

coveralls commented Dec 22, 2019

Coverage Status

Coverage remained the same at 81.688% when pulling e318d76 on philipc:output-equiv into bc9ffed on gimli-rs:master.

@kentfredric
Copy link

Still failing in the same way:

addr2line $ git checkout pull/155/head
RUSTFLAGS=" -Cdebuginfo=2 -Copt-level=3" cargo +system test
...
$ addr2line -af --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca
__rust_maybe_catch_panic
??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -af --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca
__rust_maybe_catch_panic
??:0



', tests/output_equivalence.rs:82:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
Fthread 'addr2line -ai' panicked at 'Output not equivalent:

output_equivalence-95ef2c7b90dc37a8.gz

@philipc
Copy link
Contributor Author

philipc commented Dec 28, 2019

Thanks for testing, I've force pushed another change that should fix it.

@kentfredric
Copy link

Better, the "??:?" lines are fixed.

But the remaining diff shows an "at" on one side, and not the other.

$ addr2line -aipf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca: __rust_maybe_catch_panic at ??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -aipf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca: __rust_maybe_catch_panic ??:?



', tests/output_equivalence.rs:82:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
Fthread 'addr2line -aipsf' panicked at 'Output not equivalent:

$ addr2line -aipsf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca: __rust_maybe_catch_panic at ??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -aipsf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca: __rust_maybe_catch_panic ??:?



', tests/output_equivalence.rs:82:9
F...thread 'addr2line -apf' panicked at 'Output not equivalent:

$ addr2line -apf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca: __rust_maybe_catch_panic at ??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -apf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca: __rust_maybe_catch_panic ??:?



', tests/output_equivalence.rs:82:9
Fthread 'addr2line -apsf' panicked at 'Output not equivalent:

$ addr2line -apsf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca: __rust_maybe_catch_panic at ??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -apsf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
0x00000000000618ca: __rust_maybe_catch_panic ??:?



', tests/output_equivalence.rs:82:9
F........thread 'addr2line -ipf' panicked at 'Output not equivalent:

$ addr2line -ipf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
__rust_maybe_catch_panic at ??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -ipf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
__rust_maybe_catch_panic ??:?



', tests/output_equivalence.rs:82:9
Fthread 'addr2line -ipsf' panicked at 'Output not equivalent:

$ addr2line -ipsf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
__rust_maybe_catch_panic at ??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -ipsf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
__rust_maybe_catch_panic ??:?



', tests/output_equivalence.rs:82:9
F...thread 'addr2line -pf' panicked at 'Output not equivalent:

$ addr2line -pf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
__rust_maybe_catch_panic at ??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -pf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
__rust_maybe_catch_panic ??:?



', tests/output_equivalence.rs:82:9
F...thread 'addr2line -psf' panicked at 'Output not equivalent:

$ addr2line -psf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
__rust_maybe_catch_panic at ??:?

$ /home/kent/rust/forks/addr2line/target/debug/examples/addr2line -psf --exe /home/kent/rust/forks/addr2line/target/debug/deps/output_equivalence-95ef2c7b90dc37a8 0x134d7 0x136fa 0x33b69 0x302ac 0x618ca
__rust_maybe_catch_panic ??:?



', tests/output_equivalence.rs:82:9
F
failures:

failures:
    addr2line -aipf
    addr2line -aipsf
    addr2line -apf
    addr2line -apsf
    addr2line -ipf
    addr2line -ipsf
    addr2line -pf
    addr2line -psf

Somewhere between 2.22 and 2.30, the binutils addr2line output
for unknown lines changed from "??:0" to "??:?".
@philipc
Copy link
Contributor Author

philipc commented Jan 4, 2020

Ok, that "at" should be fixed now too.

@kentfredric
Copy link

Tests now passing:

git checkout pull/155/head

kent@katipo2 ~/rust/forks/addr2line $ RUSTFLAGS=" -Cdebuginfo=2 -Copt-level=3" cargo +system test
   Compiling addr2line v0.10.0 (/home/kent/rust/forks/addr2line)
    Finished dev [unoptimized + debuginfo] target(s) in 40.71s
     Running target/debug/deps/addr2line-8adb8f4e84f8c5db

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

     Running target/debug/deps/correctness-f8d2cef7e4a3e47c

running 3 tests
test zero_function ... ok
test zero_sequence ... ok
test correctness ... ok

test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

     Running target/debug/deps/output_equivalence-95ef2c7b90dc37a8

running 32 tests
................................
test result: ok. 32 passed; 0 failed; 0 ignored; 0 measured

     Running target/debug/deps/parse-f054c0845459b407

running 6 tests
test parse_base_slice ... ok
test parse_base_rc ... ok
test parse_functions_slice ... ok
test parse_lines_slice ... ok
test parse_lines_rc ... ok
test parse_functions_rc ... ok

test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

   Doc-tests addr2line

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

@philipc
Copy link
Contributor Author

philipc commented Jan 8, 2020

Thanks for testing!

@philipc philipc merged commit 976fce6 into gimli-rs:master Jan 8, 2020
@philipc philipc deleted the output-equiv branch January 8, 2020 22:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants