diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-02-04 00:32:51 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-02-04 00:32:51 +0000 |
commit | fa047648b2a5502d7eef117adb4777eb9a63baa6 (patch) | |
tree | f470574705d472f3994b8d1b10eed39b3b478fb7 /test/SemaObjCXX | |
parent | 4655112d1c64a098c5f7d665175063f4664a7cf6 (diff) | |
download | clang-fa047648b2a5502d7eef117adb4777eb9a63baa6.tar.gz |
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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63692 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaObjCXX')
-rw-r--r-- | test/SemaObjCXX/blocks.mm | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/test/SemaObjCXX/blocks.mm b/test/SemaObjCXX/blocks.mm index 8aee15266e..a792006922 100644 --- a/test/SemaObjCXX/blocks.mm +++ b/test/SemaObjCXX/blocks.mm @@ -11,14 +11,14 @@ void foo2(id <NSObject>(*objectCreationBlock)(void)) { return bar2(objectCreationBlock); // expected-warning{{incompatible pointer types passing 'id (*)(void)', expected 'id<NSObject> (*)(void)'}} } -void bar3(id(*)()); +void bar3(id(*)()); // expected-note{{candidate function}} void foo3(id (*objectCreationBlock)(int)) { - return bar3(objectCreationBlock); // expected-error{{incompatible type passing 'id (*)(int)', expected 'id (*)(void)'}} + return bar3(objectCreationBlock); // expected-error{{no matching}} } -void bar4(id(^)()); +void bar4(id(^)()); // expected-note{{candidate function}} void foo4(id (^objectCreationBlock)(int)) { - return bar4(objectCreationBlock); // expected-error{{incompatible type passing 'id (^)(int)', expected 'id (^)(void)'}} + return bar4(objectCreationBlock); // expected-error{{no matching}} } void foo5(id (^x)(int)) { |