summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeCompletion/enum-switch-case-qualified.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-09-21 19:57:38 +0000
committerDouglas Gregor <dgregor@apple.com>2009-09-21 19:57:38 +0000
commitf25106753029204b2b9b3a523f56b1573d3ea8f6 (patch)
treeb261630261f5aeff140c49c4488ad52a9d0d10c9 /clang/test/CodeCompletion/enum-switch-case-qualified.cpp
parente7c8242baa1da5fb800661894496028218c0ff85 (diff)
downloadbcm5719-llvm-f25106753029204b2b9b3a523f56b1573d3ea8f6.tar.gz
bcm5719-llvm-f25106753029204b2b9b3a523f56b1573d3ea8f6.zip
Enhance "case" code completion in C++ to suggest qualified names for
enumerators when either the user intentionally wrote a qualified name (in which case we just use that nested-name-specifier to match the user's code) or when this is the first "case" statement and we need a qualified name to refer to an enumerator in a different scope. llvm-svn: 82474
Diffstat (limited to 'clang/test/CodeCompletion/enum-switch-case-qualified.cpp')
-rw-r--r--clang/test/CodeCompletion/enum-switch-case-qualified.cpp33
1 files changed, 33 insertions, 0 deletions
diff --git a/clang/test/CodeCompletion/enum-switch-case-qualified.cpp b/clang/test/CodeCompletion/enum-switch-case-qualified.cpp
new file mode 100644
index 00000000000..fc1b0ea0757
--- /dev/null
+++ b/clang/test/CodeCompletion/enum-switch-case-qualified.cpp
@@ -0,0 +1,33 @@
+// RUN: clang-cc -fsyntax-only -code-completion-dump=1 %s -o - | FileCheck -check-prefix=CC1 %s &&
+// RUN: true
+
+namespace M {
+
+namespace N {
+ struct C {
+ enum Color {
+ Red,
+ Orange,
+ Yellow,
+ Green,
+ Blue,
+ Indigo,
+ Violet
+ };
+ };
+}
+
+}
+
+namespace M {
+
+void test(enum N::C::Color color) {
+ switch (color) {
+ // CHECK-NEXT-CC1: Blue : 0 : N::C::Blue
+ // CHECK-NEXT-CC1: Green : 0 : N::C::Green
+ // CHECK-NEXT-CC1: Indigo : 0 : N::C::Indigo
+ // CHECK-NEXT-CC1: Orange : 0 : N::C::Orange
+ // CHECK-NEXT-CC1: Red : 0 : N::C::Red
+ // CHECK-NEXT-CC1: Violet : 0 : N::C::Violet
+ // CHECK-NEXT-CC1: Yellow : 0 : N::C::Yellow
+ case
OpenPOWER on IntegriCloud