summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/missing-members.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-08-30 00:54:35 +0000
committerAnders Carlsson <andersca@mac.com>2009-08-30 00:54:35 +0000
commit896c230a198170200cce4b9f530b0dc3448d3735 (patch)
tree74313e2e75a6ddae59852e65dfa8dac845b28f35 /clang/test/SemaCXX/missing-members.cpp
parent744a2494937618e41e63b2d6b928d3ed2dd53fd1 (diff)
downloadbcm5719-llvm-896c230a198170200cce4b9f530b0dc3448d3735.tar.gz
bcm5719-llvm-896c230a198170200cce4b9f530b0dc3448d3735.zip
Improve diagnostics for missing members. This renames the err_typecheck_no_member to err_typecheck_no_member_deprecated. The idea is that err_typecheck_no_member_deprecated should be phased out and any call sites that reference it should call DiagnoseMissingMember instead.
llvm-svn: 80469
Diffstat (limited to 'clang/test/SemaCXX/missing-members.cpp')
-rw-r--r--clang/test/SemaCXX/missing-members.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/missing-members.cpp b/clang/test/SemaCXX/missing-members.cpp
new file mode 100644
index 00000000000..a7372266c36
--- /dev/null
+++ b/clang/test/SemaCXX/missing-members.cpp
@@ -0,0 +1,20 @@
+// RUN: clang-cc -fsyntax-only -verify %s
+namespace A {
+ namespace B {
+ class C { };
+ struct S { };
+ union U { };
+ }
+}
+
+void f() {
+ A::B::i; // expected-error {{namespace 'A::B' has no member named 'i'}}
+ A::B::C::i; // expected-error {{class 'A::B::C' has no member named 'i'}}
+ ::i; // expected-error {{the global scope has no member named 'i'}}
+}
+
+int A::B::i = 10; // expected-error {{namespace 'A::B' has no member named 'i'}}
+int A::B::C::i = 10; // expected-error {{class 'A::B::C' has no member named 'i'}}
+int A::B::S::i = 10; // expected-error {{struct 'A::B::S' has no member named 'i'}}
+int A::B::U::i = 10; // expected-error {{union 'A::B::U' has no member named 'i'}}
+
OpenPOWER on IntegriCloud