summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorFrancois Pichet <pichet2000@gmail.com>2010-10-01 21:19:28 +0000
committerFrancois Pichet <pichet2000@gmail.com>2010-10-01 21:19:28 +0000
commit6d76e6cd9250bafd577aa044c0e2ad5909b90014 (patch)
tree9c97c05548359cd1f6f5c0d408901a754bd722de /clang/test
parente6712983d24fe1e87d297450a57fd012c971f65f (diff)
downloadbcm5719-llvm-6d76e6cd9250bafd577aa044c0e2ad5909b90014.tar.gz
bcm5719-llvm-6d76e6cd9250bafd577aa044c0e2ad5909b90014.zip
Better diagnostic for superfluous scope specifier inside a class definition for member functions. + Fixit.
Example: class A { void A::foo(); //warning: extra qualification on member 'foo' }; llvm-svn: 115347
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/FixIt/fixit.cpp5
-rw-r--r--clang/test/SemaCXX/class.cpp2
-rw-r--r--clang/test/SemaCXX/nested-name-spec.cpp4
3 files changed, 10 insertions, 1 deletions
diff --git a/clang/test/FixIt/fixit.cpp b/clang/test/FixIt/fixit.cpp
index 9b39c9e8a57..95d8a88af1f 100644
--- a/clang/test/FixIt/fixit.cpp
+++ b/clang/test/FixIt/fixit.cpp
@@ -66,3 +66,8 @@ CT<1> main(void); // expected-error{{'main' must return 'int'}}
// typedef CT<1> mainT(void);
// mainT main; // TODO
+// extra qualification on member
+class C {
+ int C::foo();
+};
+
diff --git a/clang/test/SemaCXX/class.cpp b/clang/test/SemaCXX/class.cpp
index ad0792c9c42..7c6a62f41e1 100644
--- a/clang/test/SemaCXX/class.cpp
+++ b/clang/test/SemaCXX/class.cpp
@@ -117,7 +117,7 @@ struct C4 {
struct S
{
void f(); // expected-note 1 {{previous declaration}}
- void S::f() {} // expected-error {{class member cannot be redeclared}} expected-note {{previous declaration}} expected-note {{previous definition}}
+ void S::f() {} // expected-warning {{extra qualification on member}} expected-error {{class member cannot be redeclared}} expected-note {{previous declaration}} expected-note {{previous definition}}
void f() {} // expected-error {{class member cannot be redeclared}} expected-error {{redefinition}}
};
diff --git a/clang/test/SemaCXX/nested-name-spec.cpp b/clang/test/SemaCXX/nested-name-spec.cpp
index 0dc1097e386..bef8570bffc 100644
--- a/clang/test/SemaCXX/nested-name-spec.cpp
+++ b/clang/test/SemaCXX/nested-name-spec.cpp
@@ -244,3 +244,7 @@ namespace PR7133 {
return false;
}
}
+
+class CLASS {
+ void CLASS::foo2(); // expected-warning {{extra qualification on member 'foo2'}}
+};
OpenPOWER on IntegriCloud