Skip to content

Not all debuginfo tests work on GDB 7.2 #13680

Closed
@alexcrichton

Description

@alexcrichton

Turns out the linux-snap bot just gained gdb 7.2 (it previously didn't have gdb at all). It also turns out that a few of our debug-info tests fail on 7.2, and it all appears primarily related to globals. The full log is here and here's an excerpt as well.

---- [debug-info] debug-info/basic-types-globals-metadata.rs stdout ----

    error: line not found in debugger output: type = bool
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/basic-types-globals-metadata.debugger.script x86_64-unknown-linux-gnu/test/debug-info/basic-types-globals-metadata.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x400840: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-globals-metadata.rs, line 71.
    static void _zzz();
    [Thread debugging using libthread_db enabled]

    Breakpoint 1, _zzz () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-globals-metadata.rs:71
    71  fn _zzz() {()}
    0x00000000004007de in main () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-globals-metadata.rs:68
    68      _zzz();

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/basic-types-globals-metadata.debugger.script:5: Error in sourced command file:
    No symbol "basic-types-globals-metadata::B" in current context.

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

    task '[debug-info] debug-info/basic-types-globals-metadata.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969

---- [debug-info] debug-info/basic-types-globals.rs stdout ----

    error: line not found in debugger output: $1 = false
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/basic-types-globals.debugger.script x86_64-unknown-linux-gnu/test/debug-info/basic-types-globals.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x400840: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-globals.rs, line 75.
    static void _zzz();
    [Thread debugging using libthread_db enabled]

    Breakpoint 1, _zzz () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-globals.rs:75
    75  fn _zzz() {()}
    0x00000000004007de in main () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-globals.rs:72
    72      _zzz();

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/basic-types-globals.debugger.script:5: Error in sourced command file:
    No symbol "basic-types-globals::B" in current context.

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

    task '[debug-info] debug-info/basic-types-globals.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969

---- [debug-info] debug-info/basic-types-mut-globals.rs stdout ----

    error: line not found in debugger output: $1 = false
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/basic-types-mut-globals.debugger.script x86_64-unknown-linux-gnu/test/debug-info/basic-types-mut-globals.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x4008e0: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-mut-globals.rs, line 129.
    static void _zzz();
    [Thread debugging using libthread_db enabled]

    Breakpoint 1, _zzz () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-mut-globals.rs:129
    129 fn _zzz() {()}
    0x00000000004007de in main () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/basic-types-mut-globals.rs:107
    107     _zzz();

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/basic-types-mut-globals.debugger.script:5: Error in sourced command file:
    No symbol "basic-types-mut-globals::B" in current context.

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

    task '[debug-info] debug-info/basic-types-mut-globals.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969

---- [debug-info] debug-info/c-style-enum.rs stdout ----

    error: line not found in debugger output: $1 = TheOnlyVariant
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/c-style-enum.debugger.script x86_64-unknown-linux-gnu/test/debug-info/c-style-enum.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x4008b0: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/c-style-enum.rs, line 126.
    static void zzz();

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/c-style-enum.debugger.script:3: Error in sourced command file:
    No symbol "c-style-enum::SINGLE_VARIANT" in current context.

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

    task '[debug-info] debug-info/c-style-enum.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969

---- [debug-info] debug-info/lexical-scopes-in-block-expression.rs stdout ----

    error: line not found in debugger output: $1 = 0
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/lexical-scopes-in-block-expression.debugger.script x86_64-unknown-linux-gnu/test/debug-info/lexical-scopes-in-block-expression.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x400c20: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/lexical-scopes-in-block-expression.rs, line 376.
    static void zzz();
    [Thread debugging using libthread_db enabled]

    Breakpoint 1, zzz () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/lexical-scopes-in-block-expression.rs:376
    376 fn zzz() {()}

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/lexical-scopes-in-block-expression.debugger.script:4: Error in sourced command file:
    No symbol "lexical-scopes-in-block-expression::MUT_INT" in current context.

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

    task '[debug-info] debug-info/lexical-scopes-in-block-expression.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969

---- [debug-info] debug-info/simple-struct.rs stdout ----

    error: line not found in debugger output: $1 = {x = 1000, y = -1001}
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/simple-struct.debugger.script x86_64-unknown-linux-gnu/test/debug-info/simple-struct.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x4009b0: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/simple-struct.rs, line 194.
    static void zzz();

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/simple-struct.debugger.script:4: Error in sourced command file:
    No symbol "simple-struct::NO_PADDING_16" in current context.

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

    task '[debug-info] debug-info/simple-struct.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969

---- [debug-info] debug-info/simple-tuple.rs stdout ----

    error: line not found in debugger output: $1 = {-50, 50}
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/simple-tuple.debugger.script x86_64-unknown-linux-gnu/test/debug-info/simple-tuple.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x400a30: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/simple-tuple.rs, line 113.
    static void zzz();

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/simple-tuple.debugger.script:4: Error in sourced command file:
    No symbol "simple-tuple::NO_PADDING_8" in current context.

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

    task '[debug-info] debug-info/simple-tuple.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969

---- [debug-info] debug-info/vec-slices.rs stdout ----

    error: line not found in debugger output: $14 = 2
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/vec-slices.debugger.script x86_64-unknown-linux-gnu/test/debug-info/vec-slices.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x401580: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/vec-slices.rs, line 87.
    static void zzz();
    [Thread debugging using libthread_db enabled]

    Breakpoint 1, zzz () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/vec-slices.rs:87
    87  fn zzz() {()}
    0x0000000000400b66 in main () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/vec-slices.rs:84
    84      zzz();
    $1 = 0
    $2 = 1
    $3 = {1}
    $4 = 4
    $5 = {2, 3, 4, 5}
    $6 = 2
    $7 = {3, 4}
    $8 = 2
    $9 = {6, 7}
    $10 = {8, 9}
    $11 = 2
    $12 = {x = 10, y = 11, z = 12}
    $13 = {x = 13, y = 14, z = 15}

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/vec-slices.debugger.script:19: Error in sourced command file:
    No symbol "vec-slices::MUT_VECT_SLICE" in current context.

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

    task '[debug-info] debug-info/vec-slices.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969

---- [debug-info] debug-info/vec.rs stdout ----

    error: line not found in debugger output: $2 = {4, 5, 6}
    command: gdb -quiet -batch -nx -command=x86_64-unknown-linux-gnu/test/debug-info/vec.debugger.script x86_64-unknown-linux-gnu/test/debug-info/vec.stage2-x86_64-unknown-linux-gnu
    stdout:
    ------------------------------------------
    Breakpoint 1 at 0x4009b0: file /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/vec.rs, line 40.
    static void zzz();
    [Thread debugging using libthread_db enabled]

    Breakpoint 1, zzz () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/vec.rs:40
    40  fn zzz() {()}
    0x0000000000400912 in main () at /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/test/debug-info/vec.rs:37
    37      zzz();
    $1 = {1, 2, 3}

    ------------------------------------------
    stderr:
    ------------------------------------------
    x86_64-unknown-linux-gnu/test/debug-info/vec.debugger.script:7: Error in sourced command file:
    No symbol "VECT" in namespace "vec".

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

    task '[debug-info] debug-info/vec.rs' failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/nightly-linux/build/obj/tmp/distcheck/rust-nightly/src/compiletest/runtest.rs:969


failures:
    [debug-info] debug-info/basic-types-globals-metadata.rs
    [debug-info] debug-info/basic-types-globals.rs
    [debug-info] debug-info/basic-types-mut-globals.rs
    [debug-info] debug-info/c-style-enum.rs
    [debug-info] debug-info/lexical-scopes-in-block-expression.rs
    [debug-info] debug-info/simple-struct.rs
    [debug-info] debug-info/simple-tuple.rs
    [debug-info] debug-info/vec-slices.rs
    [debug-info] debug-info/vec.rs

I'm going to try to upgrade gdb locally on the linux-snap bot, but we should perhaps handle the gdb version when running debug-info tests (if it's not too hard).

cc @michaelwoerister

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-debuginfoArea: Debugging information in compiled programs (DWARF, PDB, etc.)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions