diff --git a/mk/tests.mk b/mk/tests.mk index 3db9beb270e..57f37b3450c 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 95bc79f1208..28aaca1776b 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 ff6b1b15333..c703953ff70 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 06bd2a13d22..467463a39c6 100644 --- a/src/etc/lldb_batchmode.py +++ b/src/etc/lldb_batchmode.py @@ -141,6 +141,11 @@ if len(sys.argv) != 3: 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 @@ debugger.SetAsync(False) # 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 8621ce2a47e..66631f7efba 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 c7e43ae2d98..9755c8711ae 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 51d2f36cc78..d67a6b1e200 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 392963b216c..9fb3644d75d 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 67f77014c9f..b9e9b03c41b 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 dae14a1be2b..aad9e40e040 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 2270cfb6d21..e7a90780f57 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 f018bd4668b..fa3fff9fdbc 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 f0c63bfed02..a784fef2cb9 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 e7b06af66fb..a41a24b53b5 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 4a5df78b5c6..9fcb49927f6 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 c459b9be3d0..6acd94743c2 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 120553442fc..348e03c04a6 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 60986c31617..339fee678ef 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 11df00ee4fe..94efb4f591b 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 ef23e7ee876..cea1840e3a3 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 a81d42106f9..5f4521b6504 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 67601221e7a..5427a1cb4a3 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 4a29ecff06f..5a56722f0cc 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 48d14a46c83..81ff0bb6d4f 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 837a6dc0622..0bce797a36f 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 b5ce865a4aa..48d4dd26b00 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 640e04cf71c..602cca979f2 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 69bd5ae1d6c..d84446ac524 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 b68eec386a5..1814eca0f7d 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 7cb9c6bba52..060ba4a4932 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 c3996929e7c..ab8c44b9d71 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 2546c2c2339..d7c7e2e4e50 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 2e43dcdeb49..66eff80b4f9 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 b62b6f186b9..7b7a4c9fa00 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 c0a07a01374..b7e91cf9359 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 65ccb1314ad..7d1b7470024 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 867303d0877..95a5afd4eb0 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 ed9767c78f3..179bbf7dfe4 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 6e1354fbc3a..51664000299 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 02ac01c6813..c30e813f706 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 a03b263a692..fa8650d835e 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 16c7dcc34ff..888c2eb13df 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 8308afce08e..46939bc0a55 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 74d54624318..683ab12e3ff 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 ce30886c7d3..2077c7e02e7 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 78e9b278e53..b08581fa49a 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 0e47f2c9921..b451f61d05e 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 aca6cc06abd..38ecc73a60a 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 3096dfbd2a6..ac1f6103cb0 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 590b7238c12..be11e10c345 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 b211c11128a..c546f3cc8b2 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 27070dd867d..0dd9b3c39ff 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 c36642b3069..99032ca078c 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 3e6ea221f48..27cfa69aa1c 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 590a821fcb6..d69964820f6 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 5ea89f15489..482c0a5a91e 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 1fc136ac1f6..71a47d645be 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 d4051e333c1..66cae169735 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 1d9427a3bfe..3490b12d15a 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 25d9dc02404..06a2d2e5d11 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 3462735f6d1..d5052ef33ec 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 f9e2f61564b..8e42345ca4c 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 00a560edbf0..9af6130e5a9 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 bf2213509cf..3e29efd7f8d 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 4268c0adcc3..efbc9738532 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 35f3dffa0b6..25c92d1b6b4 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 7a9c7c3b372..5088a46d733 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 a43bb5e4017..d74d2e8487d 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 a012ee265d4..035d1c9f2f4 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 75c31b7beb8..66e03f81aa6 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 47b4f2cd2a2..b0cdf5991e8 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 e5f9651bb8b..ee4efbb3d50 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 d193cb78941..52b44457dc0 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 3822b80e865..eafeaeb5297 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 79f0dc52190..924b3743989 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 525fcd45cfb..32ff9f3f148 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 b38d3547f8c..9ac66f8300f 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 4c4ad51c70b..70344bd3d5e 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 afcacd46e66..c174841afb4 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 ab06367512a..1527c6a8e31 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 6932676df58..12a63614ba4 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 c46b1aca3b4..c200b310a36 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 e87c23b96e2..9b8718d085a 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 8ea407fc544..dc586c266b6 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 67e621fe556..688d2a595dc 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 00a4cb54309..f3761e4b54a 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