Skip to content

debuginfo-lldb test failures with lldb 350 on OS X #32520

Closed
@tedhorst

Description

@tedhorst

I upgraded to Xcode 7.3 which includes lldb version 350.0.21.3. When running make check, all the debuginfo-lldb tests fail like this:

thread '[debuginfo-lldb] debuginfo-lldb/vec-slices.rs' panicked at 'explicit panic', /Users/ted/Developer/OpenSource/Rustlang/rust/src/compiletest/runtest.rs:1676

---- [debuginfo-lldb] debuginfo-lldb/vec.rs stdout ----
    NOTE: compiletest thinks it is using LLDB version 350

error: Error while running LLDB
status: signal: 11
command: "/usr/bin/python2.7" "/Users/ted/Developer/OpenSource/Rustlang/rust/src/etc/lldb_batchmode.py" "x86_64-apple-darwin/test/debuginfo-lldb/vec.stage2-x86_64-apple-darwin" "x86_64-apple-darwin/test/debuginfo-lldb/vec.debugger.script"
stdout:
------------------------------------------
LLDB batch-mode script
----------------------
Debugger commands script is 'x86_64-apple-darwin/test/debuginfo-lldb/vec.debugger.script'.
Target executable is 'x86_64-apple-darwin/test/debuginfo-lldb/vec.stage2-x86_64-apple-darwin'.
Current working directory is '/Users/ted/Developer/OpenSource/Rustlang/rust/build'
Creating a target for 'x86_64-apple-darwin/test/debuginfo-lldb/vec.stage2-x86_64-apple-darwin'
settings set auto-confirm true

version
lldb-350.0.21.3 
command script import /Users/ted/Developer/OpenSource/Rustlang/rust/./src/etc/lldb_rust_formatters.py
type summary add --no-value --python-function lldb_rust_formatters.print_val -x ".*" --category Rust
type category enable Rust

breakpoint set --line 45
error: No selected frame to use to find the default file.
error: No file supplied and no default file available.

run
Process 97454 exited with status = 0 (0x00000000) Process 97454 launched: '/Users/ted/Developer/OpenSource/Rustlang/rust/build/x86_64-apple-darwin/test/debuginfo-lldb/vec.stage2-x86_64-apple-darwin' (x86_64) 
print a
error: use of undeclared identifier 'a'
error: 1 errors parsing expression

quit


------------------------------------------
stderr:
------------------------------------------

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

I can fix this by specifying the source file name in the breakpoint command, but then I get a different failure:

thread '[debuginfo-lldb] debuginfo-lldb/vec-slices.rs' panicked at 'explicit panic', /Users/ted/Developer/OpenSource/Rustlang/rust/src/compiletest/runtest.rs:1676

---- [debuginfo-lldb] debuginfo-lldb/vec.rs stdout ----
    NOTE: compiletest thinks it is using LLDB version 350

error: Error while running LLDB
status: signal: 11
command: "/usr/bin/python2.7" "/Users/ted/Developer/OpenSource/Rustlang/rust/src/etc/lldb_batchmode.py" "x86_64-apple-darwin/test/debuginfo-lldb/vec.stage2-x86_64-apple-darwin" "x86_64-apple-darwin/test/debuginfo-lldb/vec.debugger.script"
stdout:
------------------------------------------
LLDB batch-mode script
----------------------
Debugger commands script is 'x86_64-apple-darwin/test/debuginfo-lldb/vec.debugger.script'.
Target executable is 'x86_64-apple-darwin/test/debuginfo-lldb/vec.stage2-x86_64-apple-darwin'.
Current working directory is '/Users/ted/Developer/OpenSource/Rustlang/rust/build'
Creating a target for 'x86_64-apple-darwin/test/debuginfo-lldb/vec.stage2-x86_64-apple-darwin'
settings set auto-confirm true

version
lldb-350.0.21.3 
command script import /Users/ted/Developer/OpenSource/Rustlang/rust/./src/etc/lldb_rust_formatters.py
type summary add --no-value --python-function lldb_rust_formatters.print_val -x ".*" --category Rust
type category enable Rust

breakpoint set --file vec.rs --line 45
Breakpoint 1: where = vec.stage2-x86_64-apple-darwin`vec::main::h28e3360ac59a9f54 + 138, address = 0x0000000100000e3a 
run
Hit breakpoint 1.1: where = vec.stage2-x86_64-apple-darwin`vec::main::h28e3360ac59a9f54 + 138, address = 0x0000000100000e3a, resolved, hit count = 1 
Process 17835 stopped * thread #1: tid = 0x9f207, 0x0000000100000e3a vec.stage2-x86_64-apple-darwin`vec::main::h28e3360ac59a9f54 + 138 at vec.rs:45, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1 frame #0: 0x0000000100000e3a vec.stage2-x86_64-apple-darwin`vec::main::h28e3360ac59a9f54 + 138 at vec.rs:45 42 VECT[2] = 6; 43 } 44 -> 45 zzz(); // #break 46 } 47 48 fn zzz() {()} Process 17835 launched: '/Users/ted/Developer/OpenSource/Rustlang/rust/build/x86_64-apple-darwin/test/debuginfo-lldb/vec.stage2-x86_64-apple-darwin' (x86_64) 
print a
quit


------------------------------------------
stderr:
------------------------------------------

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

Nothing is printed by the print command. This happens with or without the formatters.

Metadata

Metadata

Labels

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

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions