diff --git a/mk/tests.mk b/mk/tests.mk index 3db9beb270eef..57f37b3450c3f 100644 --- a/mk/tests.mk +++ b/mk/tests.mk @@ -584,13 +584,14 @@ ifeq ($(CFG_LLDB),) CTEST_DISABLE_debuginfo-lldb = "no lldb found" endif -# Completely disable LLDB tests for now -CTEST_DISABLE_debuginfo-lldb = "LLDB tests are not enabled yet" - ifeq ($(CFG_CLANG),) CTEST_DISABLE_codegen = "no clang found" endif +ifneq ($(CFG_OSTYPE),apple-darwin) +CTEST_DISABLE_debuginfo-lldb = "lldb tests are only run on darwin" +endif + ifeq ($(CFG_OSTYPE),apple-darwin) CTEST_DISABLE_debuginfo-gdb = "gdb on darwing needs root" endif diff --git a/src/compiletest/compiletest.rs b/src/compiletest/compiletest.rs index 95bc79f1208ca..28aaca1776ba1 100644 --- a/src/compiletest/compiletest.rs +++ b/src/compiletest/compiletest.rs @@ -25,7 +25,7 @@ use std::io::fs; use std::from_str::FromStr; use getopts::{optopt, optflag, reqopt}; use common::Config; -use common::{Pretty, DebugInfoGdb, DebugInfoLldb, Codegen}; +use common::{Pretty, DebugInfoGdb, Codegen}; use util::logv; use regex::Regex; @@ -235,16 +235,6 @@ pub fn run_tests(config: &Config) { os::setenv("RUST_TEST_TASKS","1"); } - match config.mode { - DebugInfoLldb => { - // Some older versions of LLDB seem to have problems with multiple - // instances running in parallel, so only run one test task at a - // time. - os::setenv("RUST_TEST_TASKS", "1"); - } - _ => { /* proceed */ } - } - let opts = test_opts(config); let tests = make_tests(config); // sadly osx needs some file descriptor limits raised for running tests in diff --git a/src/compiletest/runtest.rs b/src/compiletest/runtest.rs index ff6b1b1533324..c703953ff70bc 100644 --- a/src/compiletest/runtest.rs +++ b/src/compiletest/runtest.rs @@ -653,7 +653,15 @@ fn run_debuginfo_lldb_test(config: &Config, props: &TestProps, testfile: &Path) script_str.push_str("version\n"); // Switch LLDB into "Rust mode" - script_str.push_str("command script import ./src/etc/lldb_rust_formatters.py\n"); + let rust_src_root = find_rust_src_root(config) + .expect("Could not find Rust source root"); + let rust_pp_module_rel_path = Path::new("./src/etc/lldb_rust_formatters.py"); + let rust_pp_module_abs_path = rust_src_root.join(rust_pp_module_rel_path) + .as_str() + .unwrap() + .to_string(); + + script_str.push_str(format!("command script import {}\n", rust_pp_module_abs_path[])[]); script_str.push_str("type summary add --no-value "); script_str.push_str("--python-function lldb_rust_formatters.print_val "); script_str.push_str("-x \".*\" --category Rust\n"); @@ -683,7 +691,10 @@ fn run_debuginfo_lldb_test(config: &Config, props: &TestProps, testfile: &Path) let debugger_script = make_out_name(config, testfile, "debugger.script"); // Let LLDB execute the script via lldb_batchmode.py - let debugger_run_result = run_lldb(config, &exe_file, &debugger_script); + let debugger_run_result = run_lldb(config, + &exe_file, + &debugger_script, + &rust_src_root); if !debugger_run_result.status.success() { fatal_proc_rec("Error while running LLDB", &debugger_run_result); @@ -691,10 +702,16 @@ fn run_debuginfo_lldb_test(config: &Config, props: &TestProps, testfile: &Path) check_debugger_output(&debugger_run_result, check_lines.as_slice()); - fn run_lldb(config: &Config, test_executable: &Path, debugger_script: &Path) -> ProcRes { + fn run_lldb(config: &Config, + test_executable: &Path, + debugger_script: &Path, + rust_src_root: &Path) + -> ProcRes { // Prepare the lldb_batchmode which executes the debugger script + let lldb_script_path = rust_src_root.join(Path::new("./src/etc/lldb_batchmode.py")); + let mut cmd = Command::new("python"); - cmd.arg("./src/etc/lldb_batchmode.py") + cmd.arg(lldb_script_path) .arg(test_executable) .arg(debugger_script) .env_set_all([("PYTHONPATH", config.lldb_python_dir.clone().unwrap().as_slice())]); diff --git a/src/etc/lldb_batchmode.py b/src/etc/lldb_batchmode.py index 06bd2a13d22cd..467463a39c646 100644 --- a/src/etc/lldb_batchmode.py +++ b/src/etc/lldb_batchmode.py @@ -141,6 +141,11 @@ def listen(): target_path = sys.argv[1] script_path = sys.argv[2] +print("LLDB batch-mode script") +print("----------------------") +print("Debugger commands script is '%s'." % script_path) +print("Target executable is '%s'." % target_path) +print("Current working directory is '%s'" % os.getcwd()) # Create a new debugger instance debugger = lldb.SBDebugger.Create() @@ -151,10 +156,12 @@ def listen(): # Create a target from a file and arch print("Creating a target for '%s'" % target_path) -target = debugger.CreateTargetWithFileAndArch(target_path, lldb.LLDB_ARCH_DEFAULT) +target_error = lldb.SBError() +target = debugger.CreateTarget(target_path, None, None, True, target_error) if not target: - print("Could not create debugging target '" + target_path + "'. Aborting.", file=sys.stderr) + print("Could not create debugging target '" + target_path + "': " + str(target_error) + + ". Aborting.", file=sys.stderr) sys.exit(1) diff --git a/src/test/debuginfo/basic-types-globals-metadata.rs b/src/test/debuginfo/basic-types-globals-metadata.rs index 8621ce2a47ecb..66631f7efba5c 100644 --- a/src/test/debuginfo/basic-types-globals-metadata.rs +++ b/src/test/debuginfo/basic-types-globals-metadata.rs @@ -10,6 +10,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g // gdb-command:rbreak zzz diff --git a/src/test/debuginfo/basic-types-globals.rs b/src/test/debuginfo/basic-types-globals.rs index c7e43ae2d98ac..9755c8711ae6c 100644 --- a/src/test/debuginfo/basic-types-globals.rs +++ b/src/test/debuginfo/basic-types-globals.rs @@ -16,6 +16,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g // gdb-command:rbreak zzz diff --git a/src/test/debuginfo/basic-types-metadata.rs b/src/test/debuginfo/basic-types-metadata.rs index 51d2f36cc78b6..d67a6b1e20049 100644 --- a/src/test/debuginfo/basic-types-metadata.rs +++ b/src/test/debuginfo/basic-types-metadata.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g // gdb-command:rbreak zzz diff --git a/src/test/debuginfo/basic-types-mut-globals.rs b/src/test/debuginfo/basic-types-mut-globals.rs index 392963b216caf..9fb3644d75d83 100644 --- a/src/test/debuginfo/basic-types-mut-globals.rs +++ b/src/test/debuginfo/basic-types-mut-globals.rs @@ -16,6 +16,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g // gdb-command:rbreak zzz diff --git a/src/test/debuginfo/basic-types.rs b/src/test/debuginfo/basic-types.rs index 67f77014c9fa9..b9e9b03c41b32 100644 --- a/src/test/debuginfo/basic-types.rs +++ b/src/test/debuginfo/basic-types.rs @@ -15,6 +15,7 @@ // its numerical value. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/borrowed-basic.rs b/src/test/debuginfo/borrowed-basic.rs index dae14a1be2b15..aad9e40e040e9 100644 --- a/src/test/debuginfo/borrowed-basic.rs +++ b/src/test/debuginfo/borrowed-basic.rs @@ -14,6 +14,7 @@ // its numerical value. // compile-flags:-g +// min-lldb-version: 310 // === GDB TESTS =================================================================================== diff --git a/src/test/debuginfo/borrowed-c-style-enum.rs b/src/test/debuginfo/borrowed-c-style-enum.rs index 2270cfb6d215d..e7a90780f5704 100644 --- a/src/test/debuginfo/borrowed-c-style-enum.rs +++ b/src/test/debuginfo/borrowed-c-style-enum.rs @@ -11,6 +11,7 @@ // ignore-android: FIXME(#10381) // compile-flags:-g +// min-lldb-version: 310 // === GDB TESTS =================================================================================== diff --git a/src/test/debuginfo/borrowed-enum.rs b/src/test/debuginfo/borrowed-enum.rs index f018bd4668bb6..fa3fff9fdbcfa 100644 --- a/src/test/debuginfo/borrowed-enum.rs +++ b/src/test/debuginfo/borrowed-enum.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/borrowed-struct.rs b/src/test/debuginfo/borrowed-struct.rs index f0c63bfed0290..a784fef2cb920 100644 --- a/src/test/debuginfo/borrowed-struct.rs +++ b/src/test/debuginfo/borrowed-struct.rs @@ -10,6 +10,7 @@ // ignore-android: FIXME(#10381) // compile-flags:-g +// min-lldb-version: 310 // === GDB TESTS =================================================================================== diff --git a/src/test/debuginfo/borrowed-tuple.rs b/src/test/debuginfo/borrowed-tuple.rs index e7b06af66fbea..a41a24b53b591 100644 --- a/src/test/debuginfo/borrowed-tuple.rs +++ b/src/test/debuginfo/borrowed-tuple.rs @@ -9,7 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) - +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/borrowed-unique-basic.rs b/src/test/debuginfo/borrowed-unique-basic.rs index 4a5df78b5c61e..9fcb49927f662 100644 --- a/src/test/debuginfo/borrowed-unique-basic.rs +++ b/src/test/debuginfo/borrowed-unique-basic.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // Gdb doesn't know about UTF-32 character encoding and will print a rust char as only // its numerical value. diff --git a/src/test/debuginfo/box.rs b/src/test/debuginfo/box.rs index c459b9be3d09c..6acd94743c2a9 100644 --- a/src/test/debuginfo/box.rs +++ b/src/test/debuginfo/box.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/boxed-struct.rs b/src/test/debuginfo/boxed-struct.rs index 120553442fcf0..348e03c04a625 100644 --- a/src/test/debuginfo/boxed-struct.rs +++ b/src/test/debuginfo/boxed-struct.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/by-value-non-immediate-argument.rs b/src/test/debuginfo/by-value-non-immediate-argument.rs index 60986c316176f..339fee678efbe 100644 --- a/src/test/debuginfo/by-value-non-immediate-argument.rs +++ b/src/test/debuginfo/by-value-non-immediate-argument.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/by-value-self-argument-in-trait-impl.rs b/src/test/debuginfo/by-value-self-argument-in-trait-impl.rs index 11df00ee4fe26..94efb4f591b94 100644 --- a/src/test/debuginfo/by-value-self-argument-in-trait-impl.rs +++ b/src/test/debuginfo/by-value-self-argument-in-trait-impl.rs @@ -9,7 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) - +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/c-style-enum-in-composite.rs b/src/test/debuginfo/c-style-enum-in-composite.rs index ef23e7ee87666..cea1840e3a385 100644 --- a/src/test/debuginfo/c-style-enum-in-composite.rs +++ b/src/test/debuginfo/c-style-enum-in-composite.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/c-style-enum.rs b/src/test/debuginfo/c-style-enum.rs index a81d42106f9e1..5f4521b6504f7 100644 --- a/src/test/debuginfo/c-style-enum.rs +++ b/src/test/debuginfo/c-style-enum.rs @@ -10,6 +10,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/closure-in-generic-function.rs b/src/test/debuginfo/closure-in-generic-function.rs index 67601221e7a46..5427a1cb4a3bd 100644 --- a/src/test/debuginfo/closure-in-generic-function.rs +++ b/src/test/debuginfo/closure-in-generic-function.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/cross-crate-type-uniquing.rs b/src/test/debuginfo/cross-crate-type-uniquing.rs index 4a29ecff06f3b..5a56722f0cc5a 100644 --- a/src/test/debuginfo/cross-crate-type-uniquing.rs +++ b/src/test/debuginfo/cross-crate-type-uniquing.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // aux-build:cross_crate_debuginfo_type_uniquing.rs extern crate cross_crate_debuginfo_type_uniquing; diff --git a/src/test/debuginfo/destructured-fn-argument.rs b/src/test/debuginfo/destructured-fn-argument.rs index 48d14a46c83f1..81ff0bb6d4fc3 100644 --- a/src/test/debuginfo/destructured-fn-argument.rs +++ b/src/test/debuginfo/destructured-fn-argument.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/destructured-local.rs b/src/test/debuginfo/destructured-local.rs index 837a6dc062227..0bce797a36f9f 100644 --- a/src/test/debuginfo/destructured-local.rs +++ b/src/test/debuginfo/destructured-local.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/evec-in-struct.rs b/src/test/debuginfo/evec-in-struct.rs index b5ce865a4aaa2..48d4dd26b003e 100644 --- a/src/test/debuginfo/evec-in-struct.rs +++ b/src/test/debuginfo/evec-in-struct.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/function-arg-initialization.rs b/src/test/debuginfo/function-arg-initialization.rs index 640e04cf71c11..602cca979f241 100644 --- a/src/test/debuginfo/function-arg-initialization.rs +++ b/src/test/debuginfo/function-arg-initialization.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // This test case checks if function arguments already have the correct value when breaking at the // first line of the function, that is if the function prologue has already been executed at the @@ -18,17 +19,17 @@ // compile-flags:-g // gdb-command:set print pretty off -// gdb-command:break function-arg-initialization.rs:243 -// gdb-command:break function-arg-initialization.rs:258 -// gdb-command:break function-arg-initialization.rs:262 -// gdb-command:break function-arg-initialization.rs:266 -// gdb-command:break function-arg-initialization.rs:270 -// gdb-command:break function-arg-initialization.rs:274 -// gdb-command:break function-arg-initialization.rs:278 -// gdb-command:break function-arg-initialization.rs:282 -// gdb-command:break function-arg-initialization.rs:286 -// gdb-command:break function-arg-initialization.rs:294 -// gdb-command:break function-arg-initialization.rs:301 +// gdb-command:break function-arg-initialization.rs:244 +// gdb-command:break function-arg-initialization.rs:259 +// gdb-command:break function-arg-initialization.rs:263 +// gdb-command:break function-arg-initialization.rs:267 +// gdb-command:break function-arg-initialization.rs:271 +// gdb-command:break function-arg-initialization.rs:275 +// gdb-command:break function-arg-initialization.rs:279 +// gdb-command:break function-arg-initialization.rs:283 +// gdb-command:break function-arg-initialization.rs:287 +// gdb-command:break function-arg-initialization.rs:295 +// gdb-command:break function-arg-initialization.rs:302 // === GDB TESTS =================================================================================== diff --git a/src/test/debuginfo/function-arguments.rs b/src/test/debuginfo/function-arguments.rs index 69bd5ae1d6c30..d84446ac5242d 100644 --- a/src/test/debuginfo/function-arguments.rs +++ b/src/test/debuginfo/function-arguments.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/function-prologue-stepping-no-stack-check.rs b/src/test/debuginfo/function-prologue-stepping-no-stack-check.rs index b68eec386a595..1814eca0f7d64 100644 --- a/src/test/debuginfo/function-prologue-stepping-no-stack-check.rs +++ b/src/test/debuginfo/function-prologue-stepping-no-stack-check.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // This test case checks if function arguments already have the correct value when breaking at the // beginning of a function. Functions with the #[no_stack_check] attribute have the same prologue as diff --git a/src/test/debuginfo/function-prologue-stepping-regular.rs b/src/test/debuginfo/function-prologue-stepping-regular.rs index 7cb9c6bba5227..060ba4a4932cd 100644 --- a/src/test/debuginfo/function-prologue-stepping-regular.rs +++ b/src/test/debuginfo/function-prologue-stepping-regular.rs @@ -11,6 +11,7 @@ // This test case checks if function arguments already have the correct value when breaking at the // beginning of a function. +// min-lldb-version: 310 // ignore-gdb // compile-flags:-g diff --git a/src/test/debuginfo/generic-function.rs b/src/test/debuginfo/generic-function.rs index c3996929e7c79..ab8c44b9d715e 100644 --- a/src/test/debuginfo/generic-function.rs +++ b/src/test/debuginfo/generic-function.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/generic-functions-nested.rs b/src/test/debuginfo/generic-functions-nested.rs index 2546c2c233954..d7c7e2e4e501d 100644 --- a/src/test/debuginfo/generic-functions-nested.rs +++ b/src/test/debuginfo/generic-functions-nested.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/generic-method-on-generic-struct.rs b/src/test/debuginfo/generic-method-on-generic-struct.rs index 2e43dcdeb498e..66eff80b4f9dd 100644 --- a/src/test/debuginfo/generic-method-on-generic-struct.rs +++ b/src/test/debuginfo/generic-method-on-generic-struct.rs @@ -11,6 +11,7 @@ // ignore-android: FIXME(#10381) // compile-flags:-g +// min-lldb-version: 310 // === GDB TESTS =================================================================================== diff --git a/src/test/debuginfo/generic-static-method-on-struct-and-enum.rs b/src/test/debuginfo/generic-static-method-on-struct-and-enum.rs index b62b6f186b9aa..7b7a4c9fa0024 100644 --- a/src/test/debuginfo/generic-static-method-on-struct-and-enum.rs +++ b/src/test/debuginfo/generic-static-method-on-struct-and-enum.rs @@ -9,8 +9,10 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g + // gdb-command:rbreak zzz // gdb-command:run diff --git a/src/test/debuginfo/generic-struct-style-enum.rs b/src/test/debuginfo/generic-struct-style-enum.rs index c0a07a0137488..b7e91cf9359ed 100644 --- a/src/test/debuginfo/generic-struct-style-enum.rs +++ b/src/test/debuginfo/generic-struct-style-enum.rs @@ -10,8 +10,10 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g + // gdb-command:set print union on // gdb-command:rbreak zzz // gdb-command:run diff --git a/src/test/debuginfo/generic-struct.rs b/src/test/debuginfo/generic-struct.rs index 65ccb1314add3..7d1b747002423 100644 --- a/src/test/debuginfo/generic-struct.rs +++ b/src/test/debuginfo/generic-struct.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/generic-tuple-style-enum.rs b/src/test/debuginfo/generic-tuple-style-enum.rs index 867303d08777f..95a5afd4eb06e 100644 --- a/src/test/debuginfo/generic-tuple-style-enum.rs +++ b/src/test/debuginfo/generic-tuple-style-enum.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/include_string.rs b/src/test/debuginfo/include_string.rs index ed9767c78f3f6..179bbf7dfe413 100644 --- a/src/test/debuginfo/include_string.rs +++ b/src/test/debuginfo/include_string.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g // gdb-command:rbreak zzz diff --git a/src/test/debuginfo/issue11600.rs b/src/test/debuginfo/issue11600.rs index 6e1354fbc3af9..5166400029980 100644 --- a/src/test/debuginfo/issue11600.rs +++ b/src/test/debuginfo/issue11600.rs @@ -18,6 +18,7 @@ fn main() { } // ignore-android: FIXME(#10381) +// ignore-lldb // This test case checks whether compile unit names are set correctly, so that the correct default // source file can be found. diff --git a/src/test/debuginfo/issue12886.rs b/src/test/debuginfo/issue12886.rs index 02ac01c6813e4..c30e813f7062c 100644 --- a/src/test/debuginfo/issue12886.rs +++ b/src/test/debuginfo/issue12886.rs @@ -10,18 +10,19 @@ // ignore-android: FIXME(#10381) // ignore-windows failing on 64-bit bots FIXME #17638 +// ignore-lldb // compile-flags:-g -// gdb-command:break issue12886.rs:30 +// gdb-command:break issue12886.rs:31 // gdb-command:run // gdb-command:next -// gdb-check:[...]31[...]s +// gdb-check:[...]32[...]s // gdb-command:continue // IF YOU MODIFY THIS FILE, BE CAREFUL TO ADAPT THE LINE NUMBERS IN THE DEBUGGER COMMANDS // This test makes sure that gdb does not set unwanted breakpoints in inlined functions. If a -// breakpoint existed in unwrap(), then calling `next` would (when stopped at line 27) would stop +// breakpoint existed in unwrap(), then calling `next` would (when stopped at line 31) stop // in unwrap() instead of stepping over the function invocation. By making sure that `s` is // contained in the output, after calling `next` just once, we can be sure that we did not stop in // unwrap(). (The testing framework doesn't allow for checking that some text is *not* contained in diff --git a/src/test/debuginfo/issue13213.rs b/src/test/debuginfo/issue13213.rs index a03b263a692b8..fa8650d835e9e 100644 --- a/src/test/debuginfo/issue13213.rs +++ b/src/test/debuginfo/issue13213.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// ignore-lldb // aux-build:issue13213aux.rs extern crate issue13213aux; diff --git a/src/test/debuginfo/issue14411.rs b/src/test/debuginfo/issue14411.rs index 16c7dcc34ff60..888c2eb13df89 100644 --- a/src/test/debuginfo/issue14411.rs +++ b/src/test/debuginfo/issue14411.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// ignore-lldb // compile-flags:-g diff --git a/src/test/debuginfo/issue7712.rs b/src/test/debuginfo/issue7712.rs index 8308afce08e8b..46939bc0a55c4 100644 --- a/src/test/debuginfo/issue7712.rs +++ b/src/test/debuginfo/issue7712.rs @@ -9,6 +9,7 @@ // except according to those terms. // compile-flags:--debuginfo=1 +// ignore-lldb pub trait TraitWithDefaultMethod { fn method(self) { diff --git a/src/test/debuginfo/lexical-scope-in-for-loop.rs b/src/test/debuginfo/lexical-scope-in-for-loop.rs index 74d5462431822..683ab12e3ff1a 100644 --- a/src/test/debuginfo/lexical-scope-in-for-loop.rs +++ b/src/test/debuginfo/lexical-scope-in-for-loop.rs @@ -10,6 +10,7 @@ // ignore-android: FIXME(#10381) // ignore-test: Not sure what is going on here --pcwalton +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/lexical-scope-in-if.rs b/src/test/debuginfo/lexical-scope-in-if.rs index ce30886c7d375..2077c7e02e7bb 100644 --- a/src/test/debuginfo/lexical-scope-in-if.rs +++ b/src/test/debuginfo/lexical-scope-in-if.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/lexical-scope-in-match.rs b/src/test/debuginfo/lexical-scope-in-match.rs index 78e9b278e53a9..b08581fa49a6e 100644 --- a/src/test/debuginfo/lexical-scope-in-match.rs +++ b/src/test/debuginfo/lexical-scope-in-match.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/lexical-scope-in-parameterless-closure.rs b/src/test/debuginfo/lexical-scope-in-parameterless-closure.rs index 0e47f2c9921fc..b451f61d05e0e 100644 --- a/src/test/debuginfo/lexical-scope-in-parameterless-closure.rs +++ b/src/test/debuginfo/lexical-scope-in-parameterless-closure.rs @@ -9,9 +9,12 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:--debuginfo=1 + // gdb-command:run +// lldb-command:run // Nothing to do here really, just make sure it compiles. See issue #8513. fn main() { diff --git a/src/test/debuginfo/lexical-scope-in-stack-closure.rs b/src/test/debuginfo/lexical-scope-in-stack-closure.rs index aca6cc06abddb..38ecc73a60aff 100644 --- a/src/test/debuginfo/lexical-scope-in-stack-closure.rs +++ b/src/test/debuginfo/lexical-scope-in-stack-closure.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/lexical-scope-in-unconditional-loop.rs b/src/test/debuginfo/lexical-scope-in-unconditional-loop.rs index 3096dfbd2a6e2..ac1f6103cb0ea 100644 --- a/src/test/debuginfo/lexical-scope-in-unconditional-loop.rs +++ b/src/test/debuginfo/lexical-scope-in-unconditional-loop.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/lexical-scope-in-unique-closure.rs b/src/test/debuginfo/lexical-scope-in-unique-closure.rs index 590b7238c123a..be11e10c345a2 100644 --- a/src/test/debuginfo/lexical-scope-in-unique-closure.rs +++ b/src/test/debuginfo/lexical-scope-in-unique-closure.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/lexical-scope-in-while.rs b/src/test/debuginfo/lexical-scope-in-while.rs index b211c11128a7c..c546f3cc8b257 100644 --- a/src/test/debuginfo/lexical-scope-in-while.rs +++ b/src/test/debuginfo/lexical-scope-in-while.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/lexical-scope-with-macro.rs b/src/test/debuginfo/lexical-scope-with-macro.rs index 27070dd867d0e..0dd9b3c39ffeb 100644 --- a/src/test/debuginfo/lexical-scope-with-macro.rs +++ b/src/test/debuginfo/lexical-scope-with-macro.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/lexical-scopes-in-block-expression.rs b/src/test/debuginfo/lexical-scopes-in-block-expression.rs index c36642b3069d0..99032ca078cfa 100644 --- a/src/test/debuginfo/lexical-scopes-in-block-expression.rs +++ b/src/test/debuginfo/lexical-scopes-in-block-expression.rs @@ -10,6 +10,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/method-on-enum.rs b/src/test/debuginfo/method-on-enum.rs index 3e6ea221f486a..27cfa69aa1c7b 100644 --- a/src/test/debuginfo/method-on-enum.rs +++ b/src/test/debuginfo/method-on-enum.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/method-on-generic-struct.rs b/src/test/debuginfo/method-on-generic-struct.rs index 590a821fcb6e1..d69964820f632 100644 --- a/src/test/debuginfo/method-on-generic-struct.rs +++ b/src/test/debuginfo/method-on-generic-struct.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/method-on-struct.rs b/src/test/debuginfo/method-on-struct.rs index 5ea89f1548915..482c0a5a91e93 100644 --- a/src/test/debuginfo/method-on-struct.rs +++ b/src/test/debuginfo/method-on-struct.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/method-on-trait.rs b/src/test/debuginfo/method-on-trait.rs index 1fc136ac1f695..71a47d645bef7 100644 --- a/src/test/debuginfo/method-on-trait.rs +++ b/src/test/debuginfo/method-on-trait.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/method-on-tuple-struct.rs b/src/test/debuginfo/method-on-tuple-struct.rs index d4051e333c184..66cae16973528 100644 --- a/src/test/debuginfo/method-on-tuple-struct.rs +++ b/src/test/debuginfo/method-on-tuple-struct.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/multiple-functions-equal-var-names.rs b/src/test/debuginfo/multiple-functions-equal-var-names.rs index 1d9427a3bfe68..3490b12d15a3c 100644 --- a/src/test/debuginfo/multiple-functions-equal-var-names.rs +++ b/src/test/debuginfo/multiple-functions-equal-var-names.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/multiple-functions.rs b/src/test/debuginfo/multiple-functions.rs index 25d9dc0240433..06a2d2e5d1183 100644 --- a/src/test/debuginfo/multiple-functions.rs +++ b/src/test/debuginfo/multiple-functions.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/name-shadowing-and-scope-nesting.rs b/src/test/debuginfo/name-shadowing-and-scope-nesting.rs index 3462735f6d109..d5052ef33ec1d 100644 --- a/src/test/debuginfo/name-shadowing-and-scope-nesting.rs +++ b/src/test/debuginfo/name-shadowing-and-scope-nesting.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/option-like-enum.rs b/src/test/debuginfo/option-like-enum.rs index f9e2f61564bee..8e42345ca4c5d 100644 --- a/src/test/debuginfo/option-like-enum.rs +++ b/src/test/debuginfo/option-like-enum.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/packed-struct-with-destructor.rs b/src/test/debuginfo/packed-struct-with-destructor.rs index 00a560edbf01a..9af6130e5a9e3 100644 --- a/src/test/debuginfo/packed-struct-with-destructor.rs +++ b/src/test/debuginfo/packed-struct-with-destructor.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/packed-struct.rs b/src/test/debuginfo/packed-struct.rs index bf2213509cf7c..3e29efd7f8d90 100644 --- a/src/test/debuginfo/packed-struct.rs +++ b/src/test/debuginfo/packed-struct.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/self-in-default-method.rs b/src/test/debuginfo/self-in-default-method.rs index 4268c0adcc396..efbc973853246 100644 --- a/src/test/debuginfo/self-in-default-method.rs +++ b/src/test/debuginfo/self-in-default-method.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/self-in-generic-default-method.rs b/src/test/debuginfo/self-in-generic-default-method.rs index 35f3dffa0b637..25c92d1b6b4fe 100644 --- a/src/test/debuginfo/self-in-generic-default-method.rs +++ b/src/test/debuginfo/self-in-generic-default-method.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/shadowed-argument.rs b/src/test/debuginfo/shadowed-argument.rs index 7a9c7c3b372f4..5088a46d733f9 100644 --- a/src/test/debuginfo/shadowed-argument.rs +++ b/src/test/debuginfo/shadowed-argument.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/shadowed-variable.rs b/src/test/debuginfo/shadowed-variable.rs index a43bb5e401730..d74d2e8487d09 100644 --- a/src/test/debuginfo/shadowed-variable.rs +++ b/src/test/debuginfo/shadowed-variable.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/simple-lexical-scope.rs b/src/test/debuginfo/simple-lexical-scope.rs index a012ee265d4a9..035d1c9f2f499 100644 --- a/src/test/debuginfo/simple-lexical-scope.rs +++ b/src/test/debuginfo/simple-lexical-scope.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/simple-struct.rs b/src/test/debuginfo/simple-struct.rs index 75c31b7beb89a..66e03f81aa627 100644 --- a/src/test/debuginfo/simple-struct.rs +++ b/src/test/debuginfo/simple-struct.rs @@ -10,6 +10,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/simple-tuple.rs b/src/test/debuginfo/simple-tuple.rs index 47b4f2cd2a2f4..b0cdf5991e898 100644 --- a/src/test/debuginfo/simple-tuple.rs +++ b/src/test/debuginfo/simple-tuple.rs @@ -10,6 +10,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/static-method-on-struct-and-enum.rs b/src/test/debuginfo/static-method-on-struct-and-enum.rs index e5f9651bb8bcf..ee4efbb3d50cb 100644 --- a/src/test/debuginfo/static-method-on-struct-and-enum.rs +++ b/src/test/debuginfo/static-method-on-struct-and-enum.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/struct-in-enum.rs b/src/test/debuginfo/struct-in-enum.rs index d193cb7894111..52b44457dc01e 100644 --- a/src/test/debuginfo/struct-in-enum.rs +++ b/src/test/debuginfo/struct-in-enum.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/struct-in-struct.rs b/src/test/debuginfo/struct-in-struct.rs index 3822b80e8650f..eafeaeb529741 100644 --- a/src/test/debuginfo/struct-in-struct.rs +++ b/src/test/debuginfo/struct-in-struct.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/struct-style-enum.rs b/src/test/debuginfo/struct-style-enum.rs index 79f0dc52190c1..924b374398961 100644 --- a/src/test/debuginfo/struct-style-enum.rs +++ b/src/test/debuginfo/struct-style-enum.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/struct-with-destructor.rs b/src/test/debuginfo/struct-with-destructor.rs index 525fcd45cfb06..32ff9f3f148bb 100644 --- a/src/test/debuginfo/struct-with-destructor.rs +++ b/src/test/debuginfo/struct-with-destructor.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/tuple-in-struct.rs b/src/test/debuginfo/tuple-in-struct.rs index b38d3547f8c20..9ac66f8300f2b 100644 --- a/src/test/debuginfo/tuple-in-struct.rs +++ b/src/test/debuginfo/tuple-in-struct.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g // gdb-command:set print pretty off diff --git a/src/test/debuginfo/tuple-in-tuple.rs b/src/test/debuginfo/tuple-in-tuple.rs index 4c4ad51c70bb0..70344bd3d5ef7 100644 --- a/src/test/debuginfo/tuple-in-tuple.rs +++ b/src/test/debuginfo/tuple-in-tuple.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/tuple-struct.rs b/src/test/debuginfo/tuple-struct.rs index afcacd46e6653..c174841afb4b3 100644 --- a/src/test/debuginfo/tuple-struct.rs +++ b/src/test/debuginfo/tuple-struct.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/tuple-style-enum.rs b/src/test/debuginfo/tuple-style-enum.rs index ab06367512ab5..1527c6a8e3115 100644 --- a/src/test/debuginfo/tuple-style-enum.rs +++ b/src/test/debuginfo/tuple-style-enum.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/unique-enum.rs b/src/test/debuginfo/unique-enum.rs index 6932676df58cd..12a63614ba4a3 100644 --- a/src/test/debuginfo/unique-enum.rs +++ b/src/test/debuginfo/unique-enum.rs @@ -10,6 +10,7 @@ // ignore-tidy-linelength // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/var-captured-in-nested-closure.rs b/src/test/debuginfo/var-captured-in-nested-closure.rs index c46b1aca3b4c6..c200b310a3631 100644 --- a/src/test/debuginfo/var-captured-in-nested-closure.rs +++ b/src/test/debuginfo/var-captured-in-nested-closure.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/var-captured-in-sendable-closure.rs b/src/test/debuginfo/var-captured-in-sendable-closure.rs index e87c23b96e276..9b8718d085aea 100644 --- a/src/test/debuginfo/var-captured-in-sendable-closure.rs +++ b/src/test/debuginfo/var-captured-in-sendable-closure.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/var-captured-in-stack-closure.rs b/src/test/debuginfo/var-captured-in-stack-closure.rs index 8ea407fc54470..dc586c266b69f 100644 --- a/src/test/debuginfo/var-captured-in-stack-closure.rs +++ b/src/test/debuginfo/var-captured-in-stack-closure.rs @@ -9,6 +9,7 @@ // except according to those terms. // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/vec-slices.rs b/src/test/debuginfo/vec-slices.rs index 67e621fe55620..688d2a595dc2e 100644 --- a/src/test/debuginfo/vec-slices.rs +++ b/src/test/debuginfo/vec-slices.rs @@ -10,6 +10,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g diff --git a/src/test/debuginfo/vec.rs b/src/test/debuginfo/vec.rs index 00a4cb5430978..f3761e4b54a4f 100644 --- a/src/test/debuginfo/vec.rs +++ b/src/test/debuginfo/vec.rs @@ -10,6 +10,7 @@ // ignore-windows: FIXME #13256 // ignore-android: FIXME(#10381) +// min-lldb-version: 310 // compile-flags:-g