summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema
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
commit8e93666a710e8ffa9c762314c1f4f39ac7410f9f (patch)
tree4fa777405b69eeae28978b640f36738d70c60615 /clang/lib/Sema
parentfbc5a4004c1d79e08a3d2e3b9dd1eba94e12e320 (diff)
downloadbcm5719-llvm-8e93666a710e8ffa9c762314c1f4f39ac7410f9f.tar.gz
bcm5719-llvm-8e93666a710e8ffa9c762314c1f4f39ac7410f9f.zip
Objective-C++: The global namespace is an associated namespace of an
Objective-C pointer type. Fixes <rdar://problem/9142559>. llvm-svn: 129339
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r--clang/lib/Sema/SemaLookup.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaLookup.cpp b/clang/lib/Sema/SemaLookup.cpp
index 3315ab6e53a..2fd799ba41c 100644
--- a/clang/lib/Sema/SemaLookup.cpp
+++ b/clang/lib/Sema/SemaLookup.cpp
@@ -1963,10 +1963,13 @@ addAssociatedClassesAndNamespaces(AssociatedLookup &Result, QualType Ty) {
case Type::Complex:
break;
- // These are ignored by ADL.
+ // If T is an Objective-C object or interface type, or a pointer to an
+ // object or interface type, the associated namespace is the global
+ // namespace.
case Type::ObjCObject:
case Type::ObjCInterface:
case Type::ObjCObjectPointer:
+ Result.Namespaces.insert(Result.S.Context.getTranslationUnitDecl());
break;
}
OpenPOWER on IntegriCloud