summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-04-12 01:02:45 +0000
committerDouglas Gregor <dgregor@apple.com>2011-04-12 01:02:45 +0000
commitf25760e17af1167c6fcf24e1ea8e3fcbd0386702 (patch)
tree1153cc7d0e7368ae8bf6dafc05ea3cdab5e21db1 /test
parent26fbc72b33bdbd20b0145bf117c64d373f8051e3 (diff)
downloadclang-f25760e17af1167c6fcf24e1ea8e3fcbd0386702.tar.gz
Objective-C++: The global namespace is an associated namespace of an
Objective-C pointer type. Fixes <rdar://problem/9142559>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129339 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/SemaObjCXX/argument-dependent-lookup.mm19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/SemaObjCXX/argument-dependent-lookup.mm b/test/SemaObjCXX/argument-dependent-lookup.mm
new file mode 100644
index 0000000000..a25cc68888
--- /dev/null
+++ b/test/SemaObjCXX/argument-dependent-lookup.mm
@@ -0,0 +1,19 @@
+// RUN: %clang_cc1 -fsyntax-only -verify %s
+
+// <rdar://problem/9142559>: For the purposes of Argument-Dependent
+// Lookup, Objective-C classes are considered to be in the global
+// namespace.
+
+@interface NSFoo
+@end
+
+template<typename T>
+void f(T t) {
+ g(t);
+}
+
+void g(NSFoo*);
+
+void test(NSFoo *foo) {
+ f(foo);
+}