summaryrefslogtreecommitdiff
path: root/clang/test/CodeCompletion/enum-switch-case.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeCompletion/enum-switch-case.c')
-rw-r--r--clang/test/CodeCompletion/enum-switch-case.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/clang/test/CodeCompletion/enum-switch-case.c b/clang/test/CodeCompletion/enum-switch-case.c
new file mode 100644
index 0000000..b83bd7f
--- /dev/null
+++ b/clang/test/CodeCompletion/enum-switch-case.c
@@ -0,0 +1,45 @@
+enum Color {
+ Red,
+ Orange,
+ Yellow,
+ Green,
+ Blue,
+ Indigo,
+ Violet
+};
+
+void test(enum Color color) {
+ switch (color) {
+ case Red:
+ break;
+
+ case Yellow:
+ break;
+
+ case Green:
+ break;
+ }
+
+ unsigned c2;
+ switch (c2) {
+ case
+ }
+
+ // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:19:10 %s -o - | FileCheck -check-prefix=CC1 %s
+ // CHECK-CC1: Blue
+ // CHECK-CC1-NEXT: Green
+ // CHECK-CC1-NEXT: Indigo
+ // CHECK-CC1-NEXT: Orange
+ // CHECK-CC1-NEXT: Violet
+
+ // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:25:10 %s -o - | FileCheck -check-prefix=CC2 %s
+ // CHECK-CC2: COMPLETION: Blue : [#enum Color#]Blue
+ // CHECK-CC2-NEXT: COMPLETION: c2 : [#unsigned int#]c2
+ // CHECK-CC2-NEXT: COMPLETION: color : [#enum Color#]color
+ // CHECK-CC2-NEXT: COMPLETION: Green : [#enum Color#]Green
+ // CHECK-CC2-NEXT: COMPLETION: Indigo : [#enum Color#]Indigo
+ // CHECK-CC2-NEXT: COMPLETION: Orange : [#enum Color#]Orange
+ // CHECK-CC2-NEXT: COMPLETION: Red : [#enum Color#]Red
+ // CHECK-CC2-NEXT: COMPLETION: Pattern : [#size_t#]sizeof(<#expression-or-type#>)
+ // CHECK-CC2-NEXT: COMPLETION: Violet : [#enum Color#]Violet
+ // CHECK-CC2-NEXT: COMPLETION: Yellow : [#enum Color#]Yellow