tests: Test line number in debuginfo for diverging function calls by Enselic · Pull Request #144034 · rust-lang/rust
rustbot
added
S-waiting-on-review
labels
Jul 16, 2025
bors
added
S-waiting-on-bors
and removed S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.labels
Jul 16, 2025fmease added a commit to fmease/rust that referenced this pull request
Jul 17, 2025…buginfo, r=wesleywiser tests: Test line number in debuginfo for diverging function calls Closes rust-lang#59558 which just [E-needs-test](rust-lang#59558 (comment)). The bug seems to have been fixed in **nightly-2021-05-10**: ```sh for toolchain in nightly-2021-05-09 \ nightly-2021-05-10 \ 1.88; do echo -e "\nWith $toolchain:" rustc +$toolchain tests/codegen/diverging-function-call-debuginfo.rs --emit llvm-ir -o /tmp/out.ll -g -Clto -Copt-level=0 build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck --input-file /tmp/out.ll tests/codegen/diverging-function-call-debuginfo.rs --check-prefix=CHECK --dump-input-context 10 2>/dev/null && echo OK || echo FAIL done ``` ``` With nightly-2021-05-09: FAIL With nightly-2021-05-10: OK With 1.88: OK ``` which gives the following list of candidate commits. Not clear which one it is exactly but it doesn't matter much since we can confirm that the test works. I have confirmed locally that with **nightly-2021-05-09** we get `line: 0` for the last call. <details> <summary>click to expand</summary> ``` $ git log ^881c1ac408d93bb7adaa3a51dabab9266e82eee8 ca82264 --no-merges --oneline ``` f25aa57 Remove unused `opt_span_warn` function ebbc949 Note why `Handler::fatal` is different from `Sesssion::fatal` 96509b4 Make `Diagnostic::span_fatal` unconditionally raise an error e49f447 Remove some unnecessary uses of `struct_span_fatal` 955fdae Rename `Parser::span_fatal_err` -> `Parser::span_err` 4b7c8b0 Add `#[track_caller]` to `FakeDefId::expect_real()` ba13225 Remove `FakeDefId::expect_local()` 020d83d Enable `-W semicolon_in_expressions_from_macros` in bootstrap 1b928ff Update LLVM submodule c2b15a6 Support -C passes in NewPM 5519cbf Don't force -O1 with ThinLTO 7c4989a Drop -opt-bisect-limit=0 flag from test db140de Explicitly register GCOV profiling pass as well 5ecbe7f Explicitly register instrprof pass 0318883 Make -Z new-llvm-pass-manager an Option<bool> 0367e24 Avoid predecessors having Drop impls </details>
fmease added a commit to fmease/rust that referenced this pull request
Jul 17, 2025…buginfo, r=wesleywiser tests: Test line number in debuginfo for diverging function calls Closes rust-lang#59558 which just [E-needs-test](rust-lang#59558 (comment)). The bug seems to have been fixed in **nightly-2021-05-10**: ```sh for toolchain in nightly-2021-05-09 \ nightly-2021-05-10 \ 1.88; do echo -e "\nWith $toolchain:" rustc +$toolchain tests/codegen/diverging-function-call-debuginfo.rs --emit llvm-ir -o /tmp/out.ll -g -Clto -Copt-level=0 build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck --input-file /tmp/out.ll tests/codegen/diverging-function-call-debuginfo.rs --check-prefix=CHECK --dump-input-context 10 2>/dev/null && echo OK || echo FAIL done ``` ``` With nightly-2021-05-09: FAIL With nightly-2021-05-10: OK With 1.88: OK ``` which gives the following list of candidate commits. Not clear which one it is exactly but it doesn't matter much since we can confirm that the test works. I have confirmed locally that with **nightly-2021-05-09** we get `line: 0` for the last call. <details> <summary>click to expand</summary> ``` $ git log ^881c1ac408d93bb7adaa3a51dabab9266e82eee8 ca82264 --no-merges --oneline ``` f25aa57 Remove unused `opt_span_warn` function ebbc949 Note why `Handler::fatal` is different from `Sesssion::fatal` 96509b4 Make `Diagnostic::span_fatal` unconditionally raise an error e49f447 Remove some unnecessary uses of `struct_span_fatal` 955fdae Rename `Parser::span_fatal_err` -> `Parser::span_err` 4b7c8b0 Add `#[track_caller]` to `FakeDefId::expect_real()` ba13225 Remove `FakeDefId::expect_local()` 020d83d Enable `-W semicolon_in_expressions_from_macros` in bootstrap 1b928ff Update LLVM submodule c2b15a6 Support -C passes in NewPM 5519cbf Don't force -O1 with ThinLTO 7c4989a Drop -opt-bisect-limit=0 flag from test db140de Explicitly register GCOV profiling pass as well 5ecbe7f Explicitly register instrprof pass 0318883 Make -Z new-llvm-pass-manager an Option<bool> 0367e24 Avoid predecessors having Drop impls </details>
bors added a commit that referenced this pull request
Jul 17, 2025Rollup of 15 pull requests Successful merges: - #142300 (Disable `tests/run-make/mte-ffi` because no CI runners have MTE extensions enabled) - #143271 (Store the type of each GVN value) - #143293 (fix `-Zsanitizer=kcfi` on `#[naked]` functions) - #143719 (Emit warning when there is no space between `-o` and arg) - #143833 (Ban projecting into SIMD types [MCP838]) - #143846 (pass --gc-sections if -Zexport-executable-symbols is enabled and improve tests) - #143879 (parse `const trait Trait`) - #143891 (Port `#[coverage]` to the new attribute system) - #143967 (constify `Option` methods) - #143985 (rustc_public: de-StableMIR-ize) - #144008 (Fix false positive double negations with macro invocation) - #144010 (Boostrap: add warning on `optimize = false`) - #144034 (tests: Test line number in debuginfo for diverging function calls) - #144049 (rustc-dev-guide subtree update) - #144056 (Copy GCC sources into the build directory even outside CI) r? `@ghost` `@rustbot` modify labels: rollup
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request
Jul 17, 2025…buginfo, r=wesleywiser tests: Test line number in debuginfo for diverging function calls Closes rust-lang#59558 which just [E-needs-test](rust-lang#59558 (comment)). The bug seems to have been fixed in **nightly-2021-05-10**: ```sh for toolchain in nightly-2021-05-09 \ nightly-2021-05-10 \ 1.88; do echo -e "\nWith $toolchain:" rustc +$toolchain tests/codegen/diverging-function-call-debuginfo.rs --emit llvm-ir -o /tmp/out.ll -g -Clto -Copt-level=0 build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck --input-file /tmp/out.ll tests/codegen/diverging-function-call-debuginfo.rs --check-prefix=CHECK --dump-input-context 10 2>/dev/null && echo OK || echo FAIL done ``` ``` With nightly-2021-05-09: FAIL With nightly-2021-05-10: OK With 1.88: OK ``` which gives the following list of candidate commits. Not clear which one it is exactly but it doesn't matter much since we can confirm that the test works. I have confirmed locally that with **nightly-2021-05-09** we get `line: 0` for the last call. <details> <summary>click to expand</summary> ``` $ git log ^881c1ac408d93bb7adaa3a51dabab9266e82eee8 ca82264 --no-merges --oneline ``` f25aa57 Remove unused `opt_span_warn` function ebbc949 Note why `Handler::fatal` is different from `Sesssion::fatal` 96509b4 Make `Diagnostic::span_fatal` unconditionally raise an error e49f447 Remove some unnecessary uses of `struct_span_fatal` 955fdae Rename `Parser::span_fatal_err` -> `Parser::span_err` 4b7c8b0 Add `#[track_caller]` to `FakeDefId::expect_real()` ba13225 Remove `FakeDefId::expect_local()` 020d83d Enable `-W semicolon_in_expressions_from_macros` in bootstrap 1b928ff Update LLVM submodule c2b15a6 Support -C passes in NewPM 5519cbf Don't force -O1 with ThinLTO 7c4989a Drop -opt-bisect-limit=0 flag from test db140de Explicitly register GCOV profiling pass as well 5ecbe7f Explicitly register instrprof pass 0318883 Make -Z new-llvm-pass-manager an Option<bool> 0367e24 Avoid predecessors having Drop impls </details>
bors added a commit that referenced this pull request
Jul 17, 2025Rollup of 12 pull requests Successful merges: - #142300 (Disable `tests/run-make/mte-ffi` because no CI runners have MTE extensions enabled) - #143271 (Store the type of each GVN value) - #143293 (fix `-Zsanitizer=kcfi` on `#[naked]` functions) - #143719 (Emit warning when there is no space between `-o` and arg) - #143846 (pass --gc-sections if -Zexport-executable-symbols is enabled and improve tests) - #143891 (Port `#[coverage]` to the new attribute system) - #143967 (constify `Option` methods) - #144008 (Fix false positive double negations with macro invocation) - #144010 (Boostrap: add warning on `optimize = false`) - #144034 (tests: Test line number in debuginfo for diverging function calls) - #144049 (rustc-dev-guide subtree update) - #144056 (Copy GCC sources into the build directory even outside CI) r? `@ghost` `@rustbot` modify labels: rollup
bors added a commit that referenced this pull request
Jul 17, 2025Rollup of 12 pull requests Successful merges: - #142300 (Disable `tests/run-make/mte-ffi` because no CI runners have MTE extensions enabled) - #143271 (Store the type of each GVN value) - #143293 (fix `-Zsanitizer=kcfi` on `#[naked]` functions) - #143719 (Emit warning when there is no space between `-o` and arg) - #143846 (pass --gc-sections if -Zexport-executable-symbols is enabled and improve tests) - #143891 (Port `#[coverage]` to the new attribute system) - #143967 (constify `Option` methods) - #144008 (Fix false positive double negations with macro invocation) - #144010 (Boostrap: add warning on `optimize = false`) - #144034 (tests: Test line number in debuginfo for diverging function calls) - #144049 (rustc-dev-guide subtree update) - #144056 (Copy GCC sources into the build directory even outside CI) r? `@ghost` `@rustbot` modify labels: rollup
jhpratt added a commit to jhpratt/rust that referenced this pull request
Jul 18, 2025…buginfo, r=wesleywiser tests: Test line number in debuginfo for diverging function calls Closes rust-lang#59558 which just [E-needs-test](rust-lang#59558 (comment)). The bug seems to have been fixed in **nightly-2021-05-10**: ```sh for toolchain in nightly-2021-05-09 \ nightly-2021-05-10 \ 1.88; do echo -e "\nWith $toolchain:" rustc +$toolchain tests/codegen/diverging-function-call-debuginfo.rs --emit llvm-ir -o /tmp/out.ll -g -Clto -Copt-level=0 build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck --input-file /tmp/out.ll tests/codegen/diverging-function-call-debuginfo.rs --check-prefix=CHECK --dump-input-context 10 2>/dev/null && echo OK || echo FAIL done ``` ``` With nightly-2021-05-09: FAIL With nightly-2021-05-10: OK With 1.88: OK ``` which gives the following list of candidate commits. Not clear which one it is exactly but it doesn't matter much since we can confirm that the test works. I have confirmed locally that with **nightly-2021-05-09** we get `line: 0` for the last call. <details> <summary>click to expand</summary> ``` $ git log ^881c1ac408d93bb7adaa3a51dabab9266e82eee8 ca82264 --no-merges --oneline ``` f25aa57 Remove unused `opt_span_warn` function ebbc949 Note why `Handler::fatal` is different from `Sesssion::fatal` 96509b4 Make `Diagnostic::span_fatal` unconditionally raise an error e49f447 Remove some unnecessary uses of `struct_span_fatal` 955fdae Rename `Parser::span_fatal_err` -> `Parser::span_err` 4b7c8b0 Add `#[track_caller]` to `FakeDefId::expect_real()` ba13225 Remove `FakeDefId::expect_local()` 020d83d Enable `-W semicolon_in_expressions_from_macros` in bootstrap 1b928ff Update LLVM submodule c2b15a6 Support -C passes in NewPM 5519cbf Don't force -O1 with ThinLTO 7c4989a Drop -opt-bisect-limit=0 flag from test db140de Explicitly register GCOV profiling pass as well 5ecbe7f Explicitly register instrprof pass 0318883 Make -Z new-llvm-pass-manager an Option<bool> 0367e24 Avoid predecessors having Drop impls </details>
bors
added
S-waiting-on-author
and removed S-waiting-on-bors
Status: Waiting on bors to run and complete tests. Bors will change the label on completion.labels
Jul 18, 2025
rustbot
added
A-compiletest
labels
Jul 19, 2025rust-bors bot added a commit that referenced this pull request
Jul 27, 2025
bors
added
S-waiting-on-bors
and removed S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.labels
Jul 28, 2025samueltardieu added a commit to samueltardieu/rust that referenced this pull request
Jul 28, 2025…buginfo, r=wesleywiser tests: Test line number in debuginfo for diverging function calls Closes rust-lang#59558 which just [E-needs-test](rust-lang#59558 (comment)). The bug seems to have been fixed in **nightly-2021-05-10**: ```sh for toolchain in nightly-2021-05-09 \ nightly-2021-05-10 \ 1.88; do echo -e "\nWith $toolchain:" rustc +$toolchain tests/codegen/diverging-function-call-debuginfo.rs --emit llvm-ir -o /tmp/out.ll -g -Clto -Copt-level=0 build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck --input-file /tmp/out.ll tests/codegen/diverging-function-call-debuginfo.rs --check-prefix=CHECK --dump-input-context 10 2>/dev/null && echo OK || echo FAIL done ``` ``` With nightly-2021-05-09: FAIL With nightly-2021-05-10: OK With 1.88: OK ``` which gives the following list of candidate commits. Not clear which one it is exactly but it doesn't matter much since we can confirm that the test works. I have confirmed locally that with **nightly-2021-05-09** we get `line: 0` for the last call. <details> <summary>click to expand</summary> ``` $ git log ^881c1ac408d93bb7adaa3a51dabab9266e82eee8 ca82264 --no-merges --oneline ``` f25aa57 Remove unused `opt_span_warn` function ebbc949 Note why `Handler::fatal` is different from `Sesssion::fatal` 96509b4 Make `Diagnostic::span_fatal` unconditionally raise an error e49f447 Remove some unnecessary uses of `struct_span_fatal` 955fdae Rename `Parser::span_fatal_err` -> `Parser::span_err` 4b7c8b0 Add `#[track_caller]` to `FakeDefId::expect_real()` ba13225 Remove `FakeDefId::expect_local()` 020d83d Enable `-W semicolon_in_expressions_from_macros` in bootstrap 1b928ff Update LLVM submodule c2b15a6 Support -C passes in NewPM 5519cbf Don't force -O1 with ThinLTO 7c4989a Drop -opt-bisect-limit=0 flag from test db140de Explicitly register GCOV profiling pass as well 5ecbe7f Explicitly register instrprof pass 0318883 Make -Z new-llvm-pass-manager an Option<bool> 0367e24 Avoid predecessors having Drop impls </details>
bors added a commit that referenced this pull request
Jul 29, 2025Rollup of 11 pull requests Successful merges: - #143289 (Remove `[T]::array_chunks(_mut)`) - #143883 (Add `--link-targets-dir` argument to linkchecker) - #144034 (tests: Test line number in debuginfo for diverging function calls) - #144236 (Add `core::mem::DropGuard`) - #144268 (Add method `find_ancestor_not_from_macro` and `find_ancestor_not_from_extern_macro` to supersede `find_oldest_ancestor_in_same_ctxt`) - #144303 (Consolidate staging for `rustc_private` tools) - #144539 (constify with_exposed_provenance) - #144569 (rustc-dev-guide subtree update) - #144573 (Raw Pointers are Constant PatKinds too) - #144578 (Ensure correct aligement of rustc_hir::Lifetime on platforms with lower default alignments.) - #144582 (fix `Atomic*::as_ptr` wording) r? `@ghost` `@rustbot` modify labels: rollup
Zalathar added a commit to Zalathar/rust that referenced this pull request
Jul 29, 2025…buginfo, r=wesleywiser tests: Test line number in debuginfo for diverging function calls Closes rust-lang#59558 which just [E-needs-test](rust-lang#59558 (comment)). The bug seems to have been fixed in **nightly-2021-05-10**: ```sh for toolchain in nightly-2021-05-09 \ nightly-2021-05-10 \ 1.88; do echo -e "\nWith $toolchain:" rustc +$toolchain tests/codegen/diverging-function-call-debuginfo.rs --emit llvm-ir -o /tmp/out.ll -g -Clto -Copt-level=0 build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck --input-file /tmp/out.ll tests/codegen/diverging-function-call-debuginfo.rs --check-prefix=CHECK --dump-input-context 10 2>/dev/null && echo OK || echo FAIL done ``` ``` With nightly-2021-05-09: FAIL With nightly-2021-05-10: OK With 1.88: OK ``` which gives the following list of candidate commits. Not clear which one it is exactly but it doesn't matter much since we can confirm that the test works. I have confirmed locally that with **nightly-2021-05-09** we get `line: 0` for the last call. <details> <summary>click to expand</summary> ``` $ git log ^881c1ac408d93bb7adaa3a51dabab9266e82eee8 ca82264 --no-merges --oneline ``` f25aa57 Remove unused `opt_span_warn` function ebbc949 Note why `Handler::fatal` is different from `Sesssion::fatal` 96509b4 Make `Diagnostic::span_fatal` unconditionally raise an error e49f447 Remove some unnecessary uses of `struct_span_fatal` 955fdae Rename `Parser::span_fatal_err` -> `Parser::span_err` 4b7c8b0 Add `#[track_caller]` to `FakeDefId::expect_real()` ba13225 Remove `FakeDefId::expect_local()` 020d83d Enable `-W semicolon_in_expressions_from_macros` in bootstrap 1b928ff Update LLVM submodule c2b15a6 Support -C passes in NewPM 5519cbf Don't force -O1 with ThinLTO 7c4989a Drop -opt-bisect-limit=0 flag from test db140de Explicitly register GCOV profiling pass as well 5ecbe7f Explicitly register instrprof pass 0318883 Make -Z new-llvm-pass-manager an Option<bool> 0367e24 Avoid predecessors having Drop impls </details>
bors
added
S-waiting-on-author
and removed S-waiting-on-bors
Status: Waiting on bors to run and complete tests. Bors will change the label on completion.labels
Jul 29, 2025
bors
added
S-waiting-on-bors
and removed S-waiting-on-author
Status: This is awaiting some action (such as code changes or more information) from the author.labels
Jul 29, 2025bors added a commit that referenced this pull request
Jul 29, 2025Rollup of 8 pull requests Successful merges: - #144034 (tests: Test line number in debuginfo for diverging function calls) - #144510 (Fix Ord, Eq and Hash implementation of panic::Location) - #144583 (Enable T-compiler backport nomination) - #144586 (Update wasi-sdk to 27.0 in CI) - #144605 (Resolve: cachify `ExternPreludeEntry.binding` through a `Cell`) - #144632 (Update some tests for LLVM 21) - #144639 (Update rustc-perf submodule) - #144640 (Add support for the m68k architecture in 'object_architecture') r? `@ghost` `@rustbot` modify labels: rollup
rust-timer added a commit that referenced this pull request
Jul 30, 2025Rollup merge of #144034 - Enselic:diverging-function-call-debuginfo, r=wesleywiser tests: Test line number in debuginfo for diverging function calls Closes #59558 which just [E-needs-test](#59558 (comment)). The bug seems to have been fixed in **nightly-2021-05-10**: ```sh for toolchain in nightly-2021-05-09 \ nightly-2021-05-10 \ 1.88; do echo -e "\nWith $toolchain:" rustc +$toolchain tests/codegen/diverging-function-call-debuginfo.rs --emit llvm-ir -o /tmp/out.ll -g -Clto -Copt-level=0 build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck --input-file /tmp/out.ll tests/codegen/diverging-function-call-debuginfo.rs --check-prefix=CHECK --dump-input-context 10 2>/dev/null && echo OK || echo FAIL done ``` ``` With nightly-2021-05-09: FAIL With nightly-2021-05-10: OK With 1.88: OK ``` which gives the following list of candidate commits. Not clear which one it is exactly but it doesn't matter much since we can confirm that the test works. I have confirmed locally that with **nightly-2021-05-09** we get `line: 0` for the last call. <details> <summary>click to expand</summary> ``` $ git log ^881c1ac408d93bb7adaa3a51dabab9266e82eee8 ca82264 --no-merges --oneline ``` f25aa57 Remove unused `opt_span_warn` function ebbc949 Note why `Handler::fatal` is different from `Sesssion::fatal` 96509b4 Make `Diagnostic::span_fatal` unconditionally raise an error e49f447 Remove some unnecessary uses of `struct_span_fatal` 955fdae Rename `Parser::span_fatal_err` -> `Parser::span_err` 4b7c8b0 Add `#[track_caller]` to `FakeDefId::expect_real()` ba13225 Remove `FakeDefId::expect_local()` 020d83d Enable `-W semicolon_in_expressions_from_macros` in bootstrap 1b928ff Update LLVM submodule c2b15a6 Support -C passes in NewPM 5519cbf Don't force -O1 with ThinLTO 7c4989a Drop -opt-bisect-limit=0 flag from test db140de Explicitly register GCOV profiling pass as well 5ecbe7f Explicitly register instrprof pass 0318883 Make -Z new-llvm-pass-manager an Option<bool> 0367e24 Avoid predecessors having Drop impls </details>
github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this pull request
Jul 31, 2025This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters