Skip to content

1.55.0 new test debuginfo/function-names.rs fails on all architectures in Debian #89750

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

Closed
infinity0 opened this issue Oct 10, 2021 · 6 comments
Labels
C-bug Category: This is a bug.

Comments

@infinity0
Copy link
Contributor

Full log, warning very large file: https://buildd.debian.org/status/fetch.php?pkg=rustc&arch=amd64&ver=1.55.0%2Bdfsg1-1%7Eexp1&stamp=1633891056&raw=0

------------------------------------------
NOTE: compiletest thinks it is using GDB version 10001090
executing "/usr/bin/gdb" "-quiet" "-batch" "-nx" "-command=/<<PKGBUILDDIR>>/build/aarch64-unknown-linux-gnu/test/debuginfo/function-names.gdb/function-names.debugger.script"
------stdout------------------------------
GNU gdb (Debian 10.1-2) 10.1.90.20210103-git
[..]

File /<<PKGBUILDDIR>>/src/test/debuginfo/function-names.rs:
92:     static fn function_names::main();
109:    static fn function_names::main::{closure#0}(*mut function_names::main::{closure#0});
113:    static fn function_names::main::{generator#1}(core::pin::Pin<&mut function_names::main::{generator#1}>, ()) -> core::ops::generator::GeneratorState;

File /<<PKGBUILDDIR>>/src/test/debuginfo/function-names.rs:
192:    static fn function_names::generic_func::{closure#0}<i32>(*mut function_names::generic_func::{closure#0});
190:    static fn function_names::generic_func<i32>(i32) -> i32;

File /<<PKGBUILDDIR>>/src/test/debuginfo/function-names.rs:
158:    static fn function_names::GenericStruct<i32, i32>::impl_function<i32, i32>();
146:    static fn function_names::Mod1::TestStruct2::impl_function();
130:    static fn function_names::TestStruct1::impl_function();
160:    static fn function_names::{impl#2}::impl_function::{closure#0}<i32, i32>(*mut function_names::{impl#2}::impl_function::{closure#0});

File /<<PKGBUILDDIR>>/src/test/debuginfo/function-names.rs:
150:    static fn function_names::Mod1::{impl#1}::trait_function();
135:    static fn function_names::{impl#1}::trait_function();
167:    static fn function_names::{impl#3}::trait_function<i32>();
181:    static fn function_names::{impl#5}::trait_function3<function_names::TestStruct1>();
186:    static fn function_names::{impl#6}::trait_function<i32, 1>();

File /<<PKGBUILDDIR>>/src/test/debuginfo/function-names.rs:
198:    static fn function_names::const_generic_fn_bool<false>();
199:    static fn function_names::const_generic_fn_non_int<{CONST#fe3cfa0214ac55c7}>();
200:    static fn function_names::const_generic_fn_signed_int<-7>();
201:    static fn function_names::const_generic_fn_unsigned_int<14>();

------stderr------------------------------

------------------------------------------

error: line not found in debugger output: [...]static fn function_names::generic_func(i32) -> i32;
status: exit status: 0
command: "/usr/bin/gdb" "-quiet" "-batch" "-nx" "-command=/<<PKGBUILDDIR>>/build/aarch64-unknown-linux-gnu/test/debuginfo/function-names.gdb/function-names.debugger.script"
stdout:
------------------------------------------

Note the difference: generic_func(i32) -> i32 expected vs generic_func<i32>(i32) -> i32 actual output.

All the other debuginfo tests are fine so I guess it's not as simple as "Debian is using the wrong GDB version"; CC @dpaoliello and @michaelwoerister who worked on the test.

@infinity0 infinity0 added the C-bug Category: This is a bug. label Oct 10, 2021
@Mark-Simulacrum
Copy link
Member

IIRC we found recently this test is just not being run in our CI, so it's probably just broken.

@michaelwoerister
Copy link
Member

I'm looking into it.

@michaelwoerister
Copy link
Member

I opened #89772 to fix this. But we'll need a better long-term solution for dealing with debuginfo tests.

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Oct 11, 2021
…-test-gdb, r=Mark-Simulacrum

Fix function-names test for GDB 10.1

This PR updates the test output in `src/test/debuginfo/function-names.rs` for GDB 10.1.

This should fix issue rust-lang#89750 -- but not the underlying problem of CI ignoring tests if not viable debugger happens to be present.
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Oct 11, 2021
…-test-gdb, r=Mark-Simulacrum

Fix function-names test for GDB 10.1

This PR updates the test output in `src/test/debuginfo/function-names.rs` for GDB 10.1.

This should fix issue rust-lang#89750 -- but not the underlying problem of CI ignoring tests if not viable debugger happens to be present.
@infinity0
Copy link
Contributor Author

Is fe3cfa0214ac55c7 endian-independent? Guess we'll see in a few days when I run this on s390x.

@infinity0
Copy link
Contributor Author

The patch works on big-endian too, test passed on s390x.

@Enselic
Copy link
Member

Enselic commented Jun 21, 2024

Triage: My understanding is that the failing test was fixed eventually. Let's close this issue as fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug.
Projects
None yet
Development

No branches or pull requests

6 participants