mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-01 06:51:58 +00:00
8d3dd39d88
Since commit 9452a8dfa3
, the new debug info format is only generated
for LLVM 8 and newer versions. However, the tests still assume that LLVM
7 will use the new debug info format. Fix the tests (and a comment in
the code) to match the actual version check.
29 lines
930 B
Rust
29 lines
930 B
Rust
// This test depends on a patch that was committed to upstream LLVM
|
|
// before 7.0, then backported to the Rust LLVM fork. It tests that
|
|
// debug info for "c-like" enums is properly emitted.
|
|
|
|
// ignore-tidy-linelength
|
|
// ignore-windows
|
|
// min-system-llvm-version 8.0
|
|
|
|
// compile-flags: -g -C no-prepopulate-passes
|
|
|
|
// DIFlagFixedEnum was deprecated in 8.0, renamed to DIFlagEnumClass.
|
|
// We match either for compatibility.
|
|
|
|
// CHECK-LABEL: @main
|
|
// CHECK: {{.*}}DICompositeType{{.*}}tag: DW_TAG_enumeration_type,{{.*}}name: "E",{{.*}}flags: {{(DIFlagEnumClass|DIFlagFixedEnum)}},{{.*}}
|
|
// CHECK: {{.*}}DIEnumerator{{.*}}name: "A",{{.*}}value: {{[0-9].*}}
|
|
// CHECK: {{.*}}DIEnumerator{{.*}}name: "B",{{.*}}value: {{[0-9].*}}
|
|
// CHECK: {{.*}}DIEnumerator{{.*}}name: "C",{{.*}}value: {{[0-9].*}}
|
|
|
|
#![allow(dead_code)]
|
|
#![allow(unused_variables)]
|
|
#![allow(unused_assignments)]
|
|
|
|
enum E { A, B, C }
|
|
|
|
pub fn main() {
|
|
let e = E::C;
|
|
}
|