diff --git a/configure b/configure index ad2dd1b87895a..aced2fd64dbb2 100755 --- a/configure +++ b/configure @@ -535,13 +535,17 @@ probe CFG_LLDB lldb if [ ! -z "$CFG_GDB" ] then - # Extract the version + # Store GDB's version CFG_GDB_VERSION=$($CFG_GDB --version 2>/dev/null | head -1) putvar CFG_GDB_VERSION fi if [ ! -z "$CFG_LLDB" ] then + # Store LLDB's version + CFG_LLDB_VERSION=$($CFG_LLDB --version 2>/dev/null | head -1) + putvar CFG_LLDB_VERSION + # If CFG_LLDB_PYTHON_DIR is not already set from the outside and valid, try to read it from # LLDB via the -P commandline options. if [ -z "$CFG_LLDB_PYTHON_DIR" ] || [ ! -d "$CFG_LLDB_PYTHON_DIR" ] diff --git a/mk/tests.mk b/mk/tests.mk index fe2c4cb41513f..04be295c27136 100644 --- a/mk/tests.mk +++ b/mk/tests.mk @@ -625,6 +625,7 @@ CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3) := \ --target $(2) \ --host $(3) \ --gdb-version="$(CFG_GDB_VERSION)" \ + --lldb-version="$(CFG_LLDB_VERSION)" \ --android-cross-path=$(CFG_ANDROID_CROSS_PATH) \ --adb-path=$(CFG_ADB) \ --adb-test-dir=$(CFG_ADB_TEST_DIR) \ diff --git a/src/compiletest/common.rs b/src/compiletest/common.rs index afe2d071461a0..4c602b8e1a3a5 100644 --- a/src/compiletest/common.rs +++ b/src/compiletest/common.rs @@ -133,6 +133,9 @@ pub struct Config { // Version of GDB pub gdb_version: Option, + // Version of LLDB + pub lldb_version: Option, + // Path to the android tools pub android_cross_path: Path, diff --git a/src/compiletest/compiletest.rs b/src/compiletest/compiletest.rs index 1e5e3ebdb3410..95bc79f1208ca 100644 --- a/src/compiletest/compiletest.rs +++ b/src/compiletest/compiletest.rs @@ -71,7 +71,8 @@ pub fn parse_config(args: Vec ) -> Config { optflag("", "jit", "run tests under the JIT"), optopt("", "target", "the target to build for", "TARGET"), optopt("", "host", "the host to build for", "HOST"), - optopt("", "gdb-version", "the version of GDB used", "MAJOR.MINOR"), + optopt("", "gdb-version", "the version of GDB used", "VERSION STRING"), + optopt("", "lldb-version", "the version of LLDB used", "VERSION STRING"), optopt("", "android-cross-path", "Android NDK standalone path", "PATH"), optopt("", "adb-path", "path to the android debugger", "PATH"), optopt("", "adb-test-dir", "path to tests for the android debugger", "PATH"), @@ -149,6 +150,7 @@ pub fn parse_config(args: Vec ) -> Config { target: opt_str2(matches.opt_str("target")), host: opt_str2(matches.opt_str("host")), gdb_version: extract_gdb_version(matches.opt_str("gdb-version")), + lldb_version: extract_lldb_version(matches.opt_str("lldb-version")), android_cross_path: opt_path(matches, "android-cross-path"), adb_path: opt_str2(matches.opt_str("adb-path")), adb_test_dir: opt_str2(matches.opt_str("adb-test-dir")), @@ -391,3 +393,37 @@ fn extract_gdb_version(full_version_line: Option) -> Option { _ => None } } + +fn extract_lldb_version(full_version_line: Option) -> Option { + // Extract the major LLDB version from the given version string. + // LLDB version strings are different for Apple and non-Apple platforms. + // At the moment, this function only supports the Apple variant, which looks + // like this: + // + // LLDB-179.5 (older versions) + // lldb-300.2.51 (new versions) + // + // We are only interested in the major version number, so this function + // will return `Some("179")` and `Some("300")` respectively. + + match full_version_line { + Some(ref full_version_line) + if full_version_line.as_slice().trim().len() > 0 => { + let full_version_line = full_version_line.as_slice().trim(); + + let re = Regex::new(r"[Ll][Ll][Dd][Bb]-([0-9]+)").unwrap(); + + match re.captures(full_version_line) { + Some(captures) => { + Some(captures.at(1).to_string()) + } + None => { + println!("Could not extract LLDB version from line '{}'", + full_version_line); + None + } + } + }, + _ => None + } +} diff --git a/src/compiletest/header.rs b/src/compiletest/header.rs index cc765695cb712..a9c984d8061df 100644 --- a/src/compiletest/header.rs +++ b/src/compiletest/header.rs @@ -181,6 +181,34 @@ pub fn is_test_ignored(config: &Config, testfile: &Path) -> bool { } } + fn ignore_lldb(config: &Config, line: &str) -> bool { + if config.mode != common::DebugInfoLldb { + return false; + } + + if parse_name_directive(line, "ignore-lldb") { + return true; + } + + match config.lldb_version { + Some(ref actual_version) => { + if line.contains("min-lldb-version") { + let min_version = line.trim() + .split(' ') + .last() + .expect("Malformed lldb version directive"); + // Ignore if actual version is smaller the minimum required + // version + lldb_version_to_int(actual_version.as_slice()) < + lldb_version_to_int(min_version.as_slice()) + } else { + false + } + } + None => false + } + } + let val = iter_header(testfile, |ln| { !parse_name_directive(ln, "ignore-test") && !parse_name_directive(ln, ignore_target(config).as_slice()) && @@ -188,7 +216,7 @@ pub fn is_test_ignored(config: &Config, testfile: &Path) -> bool { !(config.mode == common::Pretty && parse_name_directive(ln, "ignore-pretty")) && !(config.target != config.host && parse_name_directive(ln, "ignore-cross-compile")) && !ignore_gdb(config, ln) && - !(config.mode == common::DebugInfoLldb && parse_name_directive(ln, "ignore-lldb")) + !ignore_lldb(config, ln) }); !val @@ -330,3 +358,12 @@ pub fn gdb_version_to_int(version_string: &str) -> int { return major * 1000 + minor; } + +pub fn lldb_version_to_int(version_string: &str) -> int { + let error_string = format!( + "Encountered LLDB version string with unexpected format: {}", + version_string); + let error_string = error_string.as_slice(); + let major: int = FromStr::from_str(version_string).expect(error_string); + return major; +} diff --git a/src/compiletest/runtest.rs b/src/compiletest/runtest.rs index b39ad46bc86af..2b52ac65e4788 100644 --- a/src/compiletest/runtest.rs +++ b/src/compiletest/runtest.rs @@ -626,6 +626,17 @@ fn run_debuginfo_lldb_test(config: &Config, props: &TestProps, testfile: &Path) let exe_file = make_exe_name(config, testfile); + match config.lldb_version { + Some(ref version) => { + println!("NOTE: compiletest thinks it is using LLDB version {}", + version.as_slice()); + } + _ => { + println!("NOTE: compiletest does not know which version of \ + LLDB it is using"); + } + } + // Parse debugger commands etc from test files let DebuggerCommands { commands, diff --git a/src/etc/gdb_rust_pretty_printing.py b/src/etc/gdb_rust_pretty_printing.py index e8a6427c1d731..1af649f073176 100644 --- a/src/etc/gdb_rust_pretty_printing.py +++ b/src/etc/gdb_rust_pretty_printing.py @@ -196,7 +196,7 @@ def classify_struct(type): if field_count == 0: return STRUCT_KIND_REGULAR_STRUCT - if fields[0].artificial: + if fields[0].name == "RUST$ENUM$DISR": if field_count == 1: return STRUCT_KIND_CSTYLE_VARIANT elif fields[1].name == None: diff --git a/src/etc/lldb_rust_formatters.py b/src/etc/lldb_rust_formatters.py index aa223019b5481..ca895414635b6 100644 --- a/src/etc/lldb_rust_formatters.py +++ b/src/etc/lldb_rust_formatters.py @@ -117,11 +117,19 @@ def print_enum_val(val, internal_dict): assert val.GetType().GetTypeClass() == lldb.eTypeClassUnion + if val.num_children == 1: + # This is either an enum with just one variant, or it is an Option-like enum + # where the discriminant is encoded in a non-nullable pointer field. We find + # out which one it is by looking at the member name of the sole union + # variant. If it starts with "RUST$ENCODED$ENUM$" then we have an + # Option-like enum. first_variant_name = val.GetChildAtIndex(0).GetName() if first_variant_name and first_variant_name.startswith("RUST$ENCODED$ENUM$"): - # Try to extract the + # This is an Option-like enum. The position of the discriminator field is + # encoded in the name which has the format: + # RUST$ENCODED$ENUM$$ last_separator_index = first_variant_name.rfind("$") if last_separator_index == -1: return "" % first_variant_name @@ -130,6 +138,7 @@ def print_enum_val(val, internal_dict): if second_last_separator_index == -1: return "" % first_variant_name + # Extract index of the discriminator field try: disr_field_index = first_variant_name[second_last_separator_index + 1 : last_separator_index] @@ -137,18 +146,22 @@ def print_enum_val(val, internal_dict): except: return "" % first_variant_name + # Read the discriminant disr_val = val.GetChildAtIndex(0).GetChildAtIndex(disr_field_index).GetValueAsUnsigned() if disr_val == 0: + # Null case: Print the name of the null-variant null_variant_name = first_variant_name[last_separator_index + 1:] return null_variant_name else: + # Non-null case: Interpret the data as a value of the non-null variant type return print_struct_val_starting_from(0, val.GetChildAtIndex(0), internal_dict) else: + # This is just a regular uni-variant enum without discriminator field return print_struct_val_starting_from(0, val.GetChildAtIndex(0), internal_dict) - # extract the discriminator value by - disr_val = val.GetChildAtIndex(0).GetChildAtIndex(0) + # If we are here, this is a regular enum with more than one variant + disr_val = val.GetChildAtIndex(0).GetChildMemberWithName("RUST$ENUM$DISR") disr_type = disr_val.GetType() if disr_type.GetTypeClass() != lldb.eTypeClassEnumeration: diff --git a/src/librustc/middle/trans/debuginfo.rs b/src/librustc/middle/trans/debuginfo.rs index 7fbfe43c208ff..a2b7cb159d9dc 100644 --- a/src/librustc/middle/trans/debuginfo.rs +++ b/src/librustc/middle/trans/debuginfo.rs @@ -242,7 +242,6 @@ static UNKNOWN_FILE_METADATA: DIFile = (0 as DIFile); static UNKNOWN_SCOPE_METADATA: DIScope = (0 as DIScope); static FLAGS_NONE: c_uint = 0; -static FLAGS_ARTIFICAL: c_uint = llvm::debuginfo::FlagArtificial as c_uint; //=----------------------------------------------------------------------------- // Public Interface of debuginfo module @@ -2276,11 +2275,7 @@ impl VariantMemberDescriptionFactory { _ => type_metadata(cx, ty, self.span) }, offset: ComputedMemberOffset, - flags: if self.discriminant_type_metadata.is_some() && i == 0 { - FLAGS_ARTIFICAL - } else { - FLAGS_NONE - } + flags: FLAGS_NONE } }).collect() } @@ -2339,9 +2334,9 @@ fn describe_enum_variant(cx: &CrateContext, None => variant_info.args.iter().map(|_| "".to_string()).collect() }; - // If this is not a univariant enum, there is also the (unnamed) discriminant field. + // If this is not a univariant enum, there is also the discriminant field. match discriminant_info { - RegularDiscriminant(_) => arg_names.insert(0, "".to_string()), + RegularDiscriminant(_) => arg_names.insert(0, "RUST$ENUM$DISR".to_string()), _ => { /* do nothing */ } }; @@ -2713,14 +2708,14 @@ fn vec_slice_metadata(cx: &CrateContext, llvm_type: *member_llvm_types.get(0), type_metadata: element_type_metadata, offset: ComputedMemberOffset, - flags: FLAGS_ARTIFICAL + flags: FLAGS_NONE }, MemberDescription { name: "length".to_string(), llvm_type: *member_llvm_types.get(1), type_metadata: type_metadata(cx, ty::mk_uint(), span), offset: ComputedMemberOffset, - flags: FLAGS_ARTIFICAL + flags: FLAGS_NONE }, ]; diff --git a/src/test/debuginfo/borrowed-enum.rs b/src/test/debuginfo/borrowed-enum.rs index b6f5096c726a5..f018bd4668bb6 100644 --- a/src/test/debuginfo/borrowed-enum.rs +++ b/src/test/debuginfo/borrowed-enum.rs @@ -8,6 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +// ignore-tidy-linelength // ignore-android: FIXME(#10381) // compile-flags:-g @@ -19,10 +20,10 @@ // gdb-command:finish // gdb-command:print *the_a_ref -// gdb-check:$1 = {{TheA, x = 0, y = 8970181431921507452}, {TheA, 0, 2088533116, 2088533116}} +// gdb-check:$1 = {{RUST$ENUM$DISR = TheA, x = 0, y = 8970181431921507452}, {RUST$ENUM$DISR = TheA, 0, 2088533116, 2088533116}} // gdb-command:print *the_b_ref -// gdb-check:$2 = {{TheB, x = 0, y = 1229782938247303441}, {TheB, 0, 286331153, 286331153}} +// gdb-check:$2 = {{RUST$ENUM$DISR = TheB, x = 0, y = 1229782938247303441}, {RUST$ENUM$DISR = TheB, 0, 286331153, 286331153}} // gdb-command:print *univariant_ref // gdb-check:$3 = {{4820353753753434}} diff --git a/src/test/debuginfo/by-value-non-immediate-argument.rs b/src/test/debuginfo/by-value-non-immediate-argument.rs index 2e1c4c79af0b3..60986c316176f 100644 --- a/src/test/debuginfo/by-value-non-immediate-argument.rs +++ b/src/test/debuginfo/by-value-non-immediate-argument.rs @@ -8,6 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +// ignore-tidy-linelength // ignore-android: FIXME(#10381) // compile-flags:-g @@ -43,7 +44,7 @@ // gdb-command:finish // gdb-command:print x -// gdb-check:$7 = {{Case1, x = 0, y = 8970181431921507452}, {Case1, 0, 2088533116, 2088533116}} +// gdb-check:$7 = {{RUST$ENUM$DISR = Case1, x = 0, y = 8970181431921507452}, {RUST$ENUM$DISR = Case1, 0, 2088533116, 2088533116}} // gdb-command:continue diff --git a/src/test/debuginfo/generic-struct-style-enum.rs b/src/test/debuginfo/generic-struct-style-enum.rs index 7fec116b8e582..c0a07a0137488 100644 --- a/src/test/debuginfo/generic-struct-style-enum.rs +++ b/src/test/debuginfo/generic-struct-style-enum.rs @@ -18,13 +18,13 @@ // gdb-command:finish // gdb-command:print case1 -// gdb-check:$1 = {{Case1, a = 0, b = 31868, c = 31868, d = 31868, e = 31868}, {Case1, a = 0, b = 2088533116, c = 2088533116}, {Case1, a = 0, b = 8970181431921507452}} +// gdb-check:$1 = {{RUST$ENUM$DISR = Case1, a = 0, b = 31868, c = 31868, d = 31868, e = 31868}, {RUST$ENUM$DISR = Case1, a = 0, b = 2088533116, c = 2088533116}, {RUST$ENUM$DISR = Case1, a = 0, b = 8970181431921507452}} // gdb-command:print case2 -// gdb-check:$2 = {{Case2, a = 0, b = 4369, c = 4369, d = 4369, e = 4369}, {Case2, a = 0, b = 286331153, c = 286331153}, {Case2, a = 0, b = 1229782938247303441}} +// gdb-check:$2 = {{RUST$ENUM$DISR = Case2, a = 0, b = 4369, c = 4369, d = 4369, e = 4369}, {RUST$ENUM$DISR = Case2, a = 0, b = 286331153, c = 286331153}, {RUST$ENUM$DISR = Case2, a = 0, b = 1229782938247303441}} // gdb-command:print case3 -// gdb-check:$3 = {{Case3, a = 0, b = 22873, c = 22873, d = 22873, e = 22873}, {Case3, a = 0, b = 1499027801, c = 1499027801}, {Case3, a = 0, b = 6438275382588823897}} +// gdb-check:$3 = {{RUST$ENUM$DISR = Case3, a = 0, b = 22873, c = 22873, d = 22873, e = 22873}, {RUST$ENUM$DISR = Case3, a = 0, b = 1499027801, c = 1499027801}, {RUST$ENUM$DISR = Case3, a = 0, b = 6438275382588823897}} // gdb-command:print univariant // gdb-check:$4 = {{a = -1}} diff --git a/src/test/debuginfo/generic-tuple-style-enum.rs b/src/test/debuginfo/generic-tuple-style-enum.rs index 8638ae3b49d89..867303d08777f 100644 --- a/src/test/debuginfo/generic-tuple-style-enum.rs +++ b/src/test/debuginfo/generic-tuple-style-enum.rs @@ -21,13 +21,13 @@ // gdb-command:finish // gdb-command:print case1 -// gdb-check:$1 = {{Case1, 0, 31868, 31868, 31868, 31868}, {Case1, 0, 2088533116, 2088533116}, {Case1, 0, 8970181431921507452}} +// gdb-check:$1 = {{RUST$ENUM$DISR = Case1, 0, 31868, 31868, 31868, 31868}, {RUST$ENUM$DISR = Case1, 0, 2088533116, 2088533116}, {RUST$ENUM$DISR = Case1, 0, 8970181431921507452}} // gdb-command:print case2 -// gdb-check:$2 = {{Case2, 0, 4369, 4369, 4369, 4369}, {Case2, 0, 286331153, 286331153}, {Case2, 0, 1229782938247303441}} +// gdb-check:$2 = {{RUST$ENUM$DISR = Case2, 0, 4369, 4369, 4369, 4369}, {RUST$ENUM$DISR = Case2, 0, 286331153, 286331153}, {RUST$ENUM$DISR = Case2, 0, 1229782938247303441}} // gdb-command:print case3 -// gdb-check:$3 = {{Case3, 0, 22873, 22873, 22873, 22873}, {Case3, 0, 1499027801, 1499027801}, {Case3, 0, 6438275382588823897}} +// gdb-check:$3 = {{RUST$ENUM$DISR = Case3, 0, 22873, 22873, 22873, 22873}, {RUST$ENUM$DISR = Case3, 0, 1499027801, 1499027801}, {RUST$ENUM$DISR = Case3, 0, 6438275382588823897}} // gdb-command:print univariant // gdb-check:$4 = {{-1}} diff --git a/src/test/debuginfo/method-on-enum.rs b/src/test/debuginfo/method-on-enum.rs index 74f4882bd4bf4..3e6ea221f486a 100644 --- a/src/test/debuginfo/method-on-enum.rs +++ b/src/test/debuginfo/method-on-enum.rs @@ -8,6 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +// ignore-tidy-linelength // ignore-android: FIXME(#10381) // compile-flags:-g @@ -20,7 +21,7 @@ // STACK BY REF // gdb-command:finish // gdb-command:print *self -// gdb-check:$1 = {{Variant2, [...]}, {Variant2, 117901063}} +// gdb-check:$1 = {{RUST$ENUM$DISR = Variant2, [...]}, {RUST$ENUM$DISR = Variant2, 117901063}} // gdb-command:print arg1 // gdb-check:$2 = -1 // gdb-command:print arg2 @@ -30,7 +31,7 @@ // STACK BY VAL // gdb-command:finish // gdb-command:print self -// gdb-check:$4 = {{Variant2, [...]}, {Variant2, 117901063}} +// gdb-check:$4 = {{RUST$ENUM$DISR = Variant2, [...]}, {RUST$ENUM$DISR = Variant2, 117901063}} // gdb-command:print arg1 // gdb-check:$5 = -3 // gdb-command:print arg2 @@ -40,7 +41,7 @@ // OWNED BY REF // gdb-command:finish // gdb-command:print *self -// gdb-check:$7 = {{Variant1, x = 1799, y = 1799}, {Variant1, [...]}} +// gdb-check:$7 = {{RUST$ENUM$DISR = Variant1, x = 1799, y = 1799}, {RUST$ENUM$DISR = Variant1, [...]}} // gdb-command:print arg1 // gdb-check:$8 = -5 // gdb-command:print arg2 @@ -50,7 +51,7 @@ // OWNED BY VAL // gdb-command:finish // gdb-command:print self -// gdb-check:$10 = {{Variant1, x = 1799, y = 1799}, {Variant1, [...]}} +// gdb-check:$10 = {{RUST$ENUM$DISR = Variant1, x = 1799, y = 1799}, {RUST$ENUM$DISR = Variant1, [...]}} // gdb-command:print arg1 // gdb-check:$11 = -7 // gdb-command:print arg2 @@ -60,7 +61,7 @@ // OWNED MOVED // gdb-command:finish // gdb-command:print *self -// gdb-check:$13 = {{Variant1, x = 1799, y = 1799}, {Variant1, [...]}} +// gdb-check:$13 = {{RUST$ENUM$DISR = Variant1, x = 1799, y = 1799}, {RUST$ENUM$DISR = Variant1, [...]}} // gdb-command:print arg1 // gdb-check:$14 = -9 // gdb-command:print arg2 diff --git a/src/test/debuginfo/struct-in-enum.rs b/src/test/debuginfo/struct-in-enum.rs index d01119bce0533..d193cb7894111 100644 --- a/src/test/debuginfo/struct-in-enum.rs +++ b/src/test/debuginfo/struct-in-enum.rs @@ -21,10 +21,10 @@ // gdb-command:finish // gdb-command:print case1 -// gdb-check:$1 = {{Case1, 0, {x = 2088533116, y = 2088533116, z = 31868}}, {Case1, 0, 8970181431921507452, 31868}} +// gdb-check:$1 = {{RUST$ENUM$DISR = Case1, 0, {x = 2088533116, y = 2088533116, z = 31868}}, {RUST$ENUM$DISR = Case1, 0, 8970181431921507452, 31868}} // gdb-command:print case2 -// gdb-check:$2 = {{Case2, 0, {x = 286331153, y = 286331153, z = 4369}}, {Case2, 0, 1229782938247303441, 4369}} +// gdb-check:$2 = {{RUST$ENUM$DISR = Case2, 0, {x = 286331153, y = 286331153, z = 4369}}, {RUST$ENUM$DISR = Case2, 0, 1229782938247303441, 4369}} // gdb-command:print univariant // gdb-check:$3 = {{{x = 123, y = 456, z = 789}}} diff --git a/src/test/debuginfo/struct-style-enum.rs b/src/test/debuginfo/struct-style-enum.rs index c3a5abf2d389a..79f0dc52190c1 100644 --- a/src/test/debuginfo/struct-style-enum.rs +++ b/src/test/debuginfo/struct-style-enum.rs @@ -21,13 +21,13 @@ // gdb-command:finish // gdb-command:print case1 -// gdb-check:$1 = {{Case1, a = 0, b = 31868, c = 31868, d = 31868, e = 31868}, {Case1, a = 0, b = 2088533116, c = 2088533116}, {Case1, a = 0, b = 8970181431921507452}} +// gdb-check:$1 = {{RUST$ENUM$DISR = Case1, a = 0, b = 31868, c = 31868, d = 31868, e = 31868}, {RUST$ENUM$DISR = Case1, a = 0, b = 2088533116, c = 2088533116}, {RUST$ENUM$DISR = Case1, a = 0, b = 8970181431921507452}} // gdb-command:print case2 -// gdb-check:$2 = {{Case2, a = 0, b = 4369, c = 4369, d = 4369, e = 4369}, {Case2, a = 0, b = 286331153, c = 286331153}, {Case2, a = 0, b = 1229782938247303441}} +// gdb-check:$2 = {{RUST$ENUM$DISR = Case2, a = 0, b = 4369, c = 4369, d = 4369, e = 4369}, {RUST$ENUM$DISR = Case2, a = 0, b = 286331153, c = 286331153}, {RUST$ENUM$DISR = Case2, a = 0, b = 1229782938247303441}} // gdb-command:print case3 -// gdb-check:$3 = {{Case3, a = 0, b = 22873, c = 22873, d = 22873, e = 22873}, {Case3, a = 0, b = 1499027801, c = 1499027801}, {Case3, a = 0, b = 6438275382588823897}} +// gdb-check:$3 = {{RUST$ENUM$DISR = Case3, a = 0, b = 22873, c = 22873, d = 22873, e = 22873}, {RUST$ENUM$DISR = Case3, a = 0, b = 1499027801, c = 1499027801}, {RUST$ENUM$DISR = Case3, a = 0, b = 6438275382588823897}} // gdb-command:print univariant // gdb-check:$4 = {{a = -1}} diff --git a/src/test/debuginfo/tuple-style-enum.rs b/src/test/debuginfo/tuple-style-enum.rs index 7cd0a8f6164e8..ab06367512ab5 100644 --- a/src/test/debuginfo/tuple-style-enum.rs +++ b/src/test/debuginfo/tuple-style-enum.rs @@ -21,13 +21,13 @@ // gdb-command:finish // gdb-command:print case1 -// gdb-check:$1 = {{Case1, 0, 31868, 31868, 31868, 31868}, {Case1, 0, 2088533116, 2088533116}, {Case1, 0, 8970181431921507452}} +// gdb-check:$1 = {{RUST$ENUM$DISR = Case1, 0, 31868, 31868, 31868, 31868}, {RUST$ENUM$DISR = Case1, 0, 2088533116, 2088533116}, {RUST$ENUM$DISR = Case1, 0, 8970181431921507452}} // gdb-command:print case2 -// gdb-check:$2 = {{Case2, 0, 4369, 4369, 4369, 4369}, {Case2, 0, 286331153, 286331153}, {Case2, 0, 1229782938247303441}} +// gdb-check:$2 = {{RUST$ENUM$DISR = Case2, 0, 4369, 4369, 4369, 4369}, {RUST$ENUM$DISR = Case2, 0, 286331153, 286331153}, {RUST$ENUM$DISR = Case2, 0, 1229782938247303441}} // gdb-command:print case3 -// gdb-check:$3 = {{Case3, 0, 22873, 22873, 22873, 22873}, {Case3, 0, 1499027801, 1499027801}, {Case3, 0, 6438275382588823897}} +// gdb-check:$3 = {{RUST$ENUM$DISR = Case3, 0, 22873, 22873, 22873, 22873}, {RUST$ENUM$DISR = Case3, 0, 1499027801, 1499027801}, {RUST$ENUM$DISR = Case3, 0, 6438275382588823897}} // gdb-command:print univariant // gdb-check:$4 = {{-1}} diff --git a/src/test/debuginfo/unique-enum.rs b/src/test/debuginfo/unique-enum.rs index 4c945e62abcd8..6932676df58cd 100644 --- a/src/test/debuginfo/unique-enum.rs +++ b/src/test/debuginfo/unique-enum.rs @@ -8,6 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +// ignore-tidy-linelength // ignore-android: FIXME(#10381) // compile-flags:-g @@ -19,10 +20,10 @@ // gdb-command:finish // gdb-command:print *the_a -// gdb-check:$1 = {{TheA, x = 0, y = 8970181431921507452}, {TheA, 0, 2088533116, 2088533116}} +// gdb-check:$1 = {{RUST$ENUM$DISR = TheA, x = 0, y = 8970181431921507452}, {RUST$ENUM$DISR = TheA, 0, 2088533116, 2088533116}} // gdb-command:print *the_b -// gdb-check:$2 = {{TheB, x = 0, y = 1229782938247303441}, {TheB, 0, 286331153, 286331153}} +// gdb-check:$2 = {{RUST$ENUM$DISR = TheB, x = 0, y = 1229782938247303441}, {RUST$ENUM$DISR = TheB, 0, 286331153, 286331153}} // gdb-command:print *univariant // gdb-check:$3 = {{123234}} diff --git a/src/test/debuginfo/var-captured-in-nested-closure.rs b/src/test/debuginfo/var-captured-in-nested-closure.rs index d72f9256883c4..c46b1aca3b4c6 100644 --- a/src/test/debuginfo/var-captured-in-nested-closure.rs +++ b/src/test/debuginfo/var-captured-in-nested-closure.rs @@ -63,21 +63,21 @@ // lldb-command:print *owned // lldb-check:[...]$4 = 6 // lldb-command:print closure_local -// lldb-check:[...]$6 = 8 +// lldb-check:[...]$5 = 8 // lldb-command:continue // lldb-command:print variable -// lldb-check:[...]$7 = 1 +// lldb-check:[...]$6 = 1 // lldb-command:print constant -// lldb-check:[...]$8 = 2 +// lldb-check:[...]$7 = 2 // lldb-command:print a_struct -// lldb-check:[...]$9 = Struct { a: -3, b: 4.5, c: 5 } +// lldb-check:[...]$8 = Struct { a: -3, b: 4.5, c: 5 } // lldb-command:print *struct_ref -// lldb-check:[...]$10 = Struct { a: -3, b: 4.5, c: 5 } +// lldb-check:[...]$9 = Struct { a: -3, b: 4.5, c: 5 } // lldb-command:print *owned -// lldb-check:[...]$11 = 6 +// lldb-check:[...]$10 = 6 // lldb-command:print closure_local -// lldb-check:[...]$13 = 8 +// lldb-check:[...]$11 = 8 // lldb-command:continue #![allow(unused_variable)]