summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/qualification-conversion.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-02-04 00:32:51 +0000
committerDouglas Gregor <dgregor@apple.com>2009-02-04 00:32:51 +0000
commite254f90d94e3294470b055e3851d636333e3467c (patch)
tree40abda5f13c55af26120e1a54173929d33723423 /clang/test/SemaCXX/qualification-conversion.cpp
parent3d9296e6f552cceb73dae277f56bac3127a44759 (diff)
downloadbcm5719-llvm-e254f90d94e3294470b055e3851d636333e3467c.tar.gz
bcm5719-llvm-e254f90d94e3294470b055e3851d636333e3467c.zip
Initial implementation of argument dependent lookup (a.k.a. ADL,
a.k.a. Koenig lookup) in C++. Most of the pieces are in place, but for two: - In an unqualified call g(x), even if the name does not refer to anything in the current scope, we can still find functions named "g" based on ADL. We don't yet have this ability. - ADL will need updating for friend functions and templates. llvm-svn: 63692
Diffstat (limited to 'clang/test/SemaCXX/qualification-conversion.cpp')
-rw-r--r--clang/test/SemaCXX/qualification-conversion.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/clang/test/SemaCXX/qualification-conversion.cpp b/clang/test/SemaCXX/qualification-conversion.cpp
index 1b818c33927..689a7b37a56 100644
--- a/clang/test/SemaCXX/qualification-conversion.cpp
+++ b/clang/test/SemaCXX/qualification-conversion.cpp
@@ -1,23 +1,23 @@
// RUN: clang -fsyntax-only -pedantic -verify %s
int* quals1(int const * p);
int* quals2(int const * const * pp);
-int* quals3(int const * * const * ppp);
+int* quals3(int const * * const * ppp); // expected-note{{candidate function}}
void test_quals(int * p, int * * pp, int * * * ppp) {
int const * const * pp2 = pp;
quals1(p);
quals2(pp);
- quals3(ppp); // expected-error {{ incompatible type passing 'int ***', expected 'int const **const *' }}
+ quals3(ppp); // expected-error {{no matching}}
}
struct A {};
void mquals1(int const A::*p);
void mquals2(int const A::* const A::*pp);
-void mquals3(int const A::* A::* const A::*ppp);
+void mquals3(int const A::* A::* const A::*ppp); // expected-note{{candidate function}}
void test_mquals(int A::*p, int A::* A::*pp, int A::* A::* A::*ppp) {
int const A::* const A::* pp2 = pp;
mquals1(p);
mquals2(pp);
- mquals3(ppp); // expected-error {{ incompatible type passing 'int struct A::*struct A::*struct A::*', expected 'int const struct A::*struct A::*const struct A::*' }}
+ mquals3(ppp); // expected-error {{no matching}}
}
OpenPOWER on IntegriCloud