From 0dfb889575a64478b86ca1633fd10a4ca42a7648 Mon Sep 17 00:00:00 2001 From: Eli Friedman Date: Thu, 6 Oct 2011 23:00:33 +0000 Subject: Support for C1x _Atomic specifier (see testcase). This is primarily being committed at the moment to help support C++0x , but it should be a solid base for implementing the full specification of C1x _Atomic. Thanks to Jeffrey Yasskin for the thorough review! llvm-svn: 141330 --- clang/lib/Sema/SemaLookup.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'clang/lib/Sema/SemaLookup.cpp') diff --git a/clang/lib/Sema/SemaLookup.cpp b/clang/lib/Sema/SemaLookup.cpp index 84ae42a9b95..75da41dd770 100644 --- a/clang/lib/Sema/SemaLookup.cpp +++ b/clang/lib/Sema/SemaLookup.cpp @@ -2000,6 +2000,12 @@ addAssociatedClassesAndNamespaces(AssociatedLookup &Result, QualType Ty) { case Type::ObjCObjectPointer: Result.Namespaces.insert(Result.S.Context.getTranslationUnitDecl()); break; + + // Atomic types are just wrappers; use the associations of the + // contained type. + case Type::Atomic: + T = cast(T)->getValueType().getTypePtr(); + continue; } if (Queue.empty()) break; -- cgit v1.2.3