summaryrefslogtreecommitdiff
path: root/clang/test/CodeCompletion/enum-switch-case.c
blob: b83bd7f6474c9a7cda5d5cdedd8c3559eda0a751 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
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