Closed
Description
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.