]> granicus.if.org Git - clang/commitdiff
Move debug info tests for scoped enums into a separate file.
authorAdrian Prantl <aprantl@apple.com>
Mon, 22 Apr 2013 16:47:50 +0000 (16:47 +0000)
committerAdrian Prantl <aprantl@apple.com>
Mon, 22 Apr 2013 16:47:50 +0000 (16:47 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180026 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGenCXX/scoped-enums-debug-info.cpp [new file with mode: 0644]

diff --git a/test/CodeGenCXX/scoped-enums-debug-info.cpp b/test/CodeGenCXX/scoped-enums-debug-info.cpp
new file mode 100644 (file)
index 0000000..d3ef9f7
--- /dev/null
@@ -0,0 +1,26 @@
+// RUN: %clang_cc1 -std=c++11 -emit-llvm -g -o - %s | FileCheck %s
+// Test that we are emitting debug info and base types for scoped enums.
+
+// CHECK: [ DW_TAG_enumeration_type ] [Color] {{.*}} [from int]
+enum class Color { gray };
+
+void f(Color);
+void g() {
+  f(Color::gray);
+}
+
+// CHECK: [ DW_TAG_enumeration_type ] [Colour] {{.*}} [from int]
+enum struct Colour { grey };
+
+void h(Colour);
+void i() {
+  h(Colour::grey);
+}
+
+// CHECK: [ DW_TAG_enumeration_type ] [Couleur] {{.*}} [from unsigned char]
+enum class Couleur : unsigned char { gris };
+
+void j(Couleur);
+void k() {
+  j(Couleur::gris);
+}