Date: Wed, 18 Nov 2009 14:59:58 +0000 (UTC) From: Roman Divacky <rdivacky@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r199482 - in vendor/clang/dist: . clang.xcodeproj docs include/clang-c include/clang/AST include/clang/Analysis include/clang/Analysis/Analyses include/clang/Analysis/FlowSensitive incl... Message-ID: <200911181459.nAIExwjI074923@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rdivacky Date: Wed Nov 18 14:59:57 2009 New Revision: 199482 URL: http://svn.freebsd.org/changeset/base/199482 Log: Update clang to r89205. Added: vendor/clang/dist/include/clang/Analysis/ManagerRegistry.h vendor/clang/dist/include/clang/Basic/TargetOptions.h vendor/clang/dist/include/clang/CodeGen/CodeGenOptions.h vendor/clang/dist/include/clang/Frontend/ChainedDiagnosticClient.h vendor/clang/dist/include/clang/Frontend/CompilerInstance.h vendor/clang/dist/include/clang/Frontend/CompilerInvocation.h vendor/clang/dist/include/clang/Frontend/DependencyOutputOptions.h vendor/clang/dist/include/clang/Frontend/FrontendAction.h vendor/clang/dist/include/clang/Frontend/FrontendActions.h vendor/clang/dist/include/clang/Frontend/FrontendOptions.h vendor/clang/dist/include/clang/Frontend/FrontendPluginRegistry.h vendor/clang/dist/include/clang/Frontend/HeaderSearchOptions.h vendor/clang/dist/include/clang/Frontend/PreprocessorOptions.h vendor/clang/dist/include/clang/Frontend/PreprocessorOutputOptions.h vendor/clang/dist/include/clang/Frontend/VerifyDiagnosticsClient.h vendor/clang/dist/include/clang/Parse/Template.h vendor/clang/dist/lib/AST/TypePrinter.cpp vendor/clang/dist/lib/Analysis/ArrayBoundChecker.cpp vendor/clang/dist/lib/Analysis/CastToStructChecker.cpp vendor/clang/dist/lib/Analysis/CheckSizeofPointer.cpp vendor/clang/dist/lib/Analysis/FixedAddressChecker.cpp vendor/clang/dist/lib/Analysis/GRExprEngineExperimentalChecks.cpp vendor/clang/dist/lib/Analysis/GRExprEngineExperimentalChecks.h vendor/clang/dist/lib/Analysis/GRExprEngineInternalChecks.h vendor/clang/dist/lib/Analysis/MallocChecker.cpp vendor/clang/dist/lib/Analysis/ManagerRegistry.cpp vendor/clang/dist/lib/Analysis/PointerArithChecker.cpp vendor/clang/dist/lib/Analysis/PointerSubChecker.cpp vendor/clang/dist/lib/Analysis/PthreadLockChecker.cpp vendor/clang/dist/lib/Analysis/ReturnPointerRangeChecker.cpp vendor/clang/dist/lib/Analysis/ReturnStackAddressChecker.cpp vendor/clang/dist/lib/Analysis/ReturnUndefChecker.cpp vendor/clang/dist/lib/Analysis/UndefinedArraySubscriptChecker.cpp vendor/clang/dist/lib/CodeGen/GlobalDecl.h vendor/clang/dist/lib/Frontend/CompilerInstance.cpp vendor/clang/dist/lib/Frontend/CompilerInvocation.cpp vendor/clang/dist/lib/Frontend/FrontendAction.cpp vendor/clang/dist/lib/Frontend/FrontendActions.cpp vendor/clang/dist/lib/Frontend/FrontendOptions.cpp vendor/clang/dist/lib/Frontend/VerifyDiagnosticsClient.cpp vendor/clang/dist/lib/Sema/Lookup.h vendor/clang/dist/test/Analysis/malloc.c vendor/clang/dist/test/Analysis/plist-output.m vendor/clang/dist/test/Analysis/sizeofpointer.c vendor/clang/dist/test/CXX/basic/basic.lookup/basic.lookup.udir/p1.cpp vendor/clang/dist/test/CXX/dcl.dcl/basic.namespace/namespace.def/namespace.unnamed/p1.cpp vendor/clang/dist/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p1.cpp vendor/clang/dist/test/CXX/dcl.dcl/basic.namespace/namespace.udir/p1.cpp vendor/clang/dist/test/CXX/dcl.decl/dcl.meaning/dcl.array/p1.cpp vendor/clang/dist/test/CXX/expr/expr.unary/expr.delete/p5.cpp vendor/clang/dist/test/CXX/special/class.free/p1.cpp vendor/clang/dist/test/CXX/special/class.free/p6.cpp vendor/clang/dist/test/CodeCompletion/objc-message.m vendor/clang/dist/test/CodeGenCXX/array-operator-delete-call.cpp vendor/clang/dist/test/CodeGenCXX/array-value-initialize.cpp vendor/clang/dist/test/CodeGenCXX/assign-operator.cpp vendor/clang/dist/test/CodeGenCXX/debug-info.cpp vendor/clang/dist/test/CodeGenCXX/default-arguments.cpp vendor/clang/dist/test/CodeGenCXX/default-constructor-default-argument.cpp vendor/clang/dist/test/CodeGenCXX/delete-two-arg.cpp vendor/clang/dist/test/CodeGenCXX/dyncast.cpp vendor/clang/dist/test/CodeGenCXX/empty-union.cpp vendor/clang/dist/test/CodeGenCXX/global-array-destruction.cpp vendor/clang/dist/test/CodeGenCXX/init-incomplete-type.cpp vendor/clang/dist/test/CodeGenCXX/instantiate-init-list.cpp vendor/clang/dist/test/CodeGenCXX/mangle-system-header.cpp vendor/clang/dist/test/CodeGenCXX/member-expressions.cpp vendor/clang/dist/test/CodeGenCXX/member-init-struct.cpp vendor/clang/dist/test/CodeGenCXX/member-init-union.cpp vendor/clang/dist/test/CodeGenCXX/new-operator-phi.cpp vendor/clang/dist/test/CodeGenCXX/rtti.cpp vendor/clang/dist/test/CodeGenCXX/static-init-1.cpp vendor/clang/dist/test/CodeGenCXX/static-init-2.cpp vendor/clang/dist/test/CodeGenCXX/typeinfo vendor/clang/dist/test/CodeGenCXX/vararg-conversion-ctor.cpp vendor/clang/dist/test/CodeGenCXX/virt-dtor-gen.cpp vendor/clang/dist/test/CodeGenCXX/virtual-operator-call.cpp vendor/clang/dist/test/CodeGenCXX/virtual-pseudo-destructor-call.cpp vendor/clang/dist/test/CodeGenObjC/hidden-visibility.m vendor/clang/dist/test/CodeGenObjC/missing-atend-metadata.m vendor/clang/dist/test/CodeGenObjC/objc2-weak-import-attribute.m vendor/clang/dist/test/CodeGenObjC/super-message-fragileabi.m vendor/clang/dist/test/Index/Inputs/ vendor/clang/dist/test/Index/Inputs/c-index-pch.h vendor/clang/dist/test/Index/Inputs/foo.h vendor/clang/dist/test/Index/Inputs/lit.local.cfg vendor/clang/dist/test/Index/Inputs/objc.h vendor/clang/dist/test/Index/Inputs/t1.c vendor/clang/dist/test/Index/Inputs/t1.m vendor/clang/dist/test/Index/Inputs/t2.c vendor/clang/dist/test/Index/Inputs/t2.m vendor/clang/dist/test/Index/TestClassDecl.m vendor/clang/dist/test/Index/TestClassForwardDecl.m vendor/clang/dist/test/Index/c-index-api-loadTU-test.m vendor/clang/dist/test/Index/c-index-getCursor-test.m vendor/clang/dist/test/Index/code-completion.cpp vendor/clang/dist/test/Index/complete-member-access.m vendor/clang/dist/test/Index/complete-objc-message.m vendor/clang/dist/test/Index/complete-protocols.m vendor/clang/dist/test/Sema/conversion-64-32.c vendor/clang/dist/test/Sema/conversion.c vendor/clang/dist/test/Sema/pointer-conversion.c vendor/clang/dist/test/SemaCXX/builtins.cpp vendor/clang/dist/test/SemaCXX/format-attribute.cpp vendor/clang/dist/test/SemaCXX/vararg-default-arg.cpp vendor/clang/dist/test/SemaObjC/atomoic-property-synnthesis-rules.m vendor/clang/dist/test/SemaObjC/idiomatic-parentheses.m vendor/clang/dist/test/SemaTemplate/deduction.cpp vendor/clang/dist/test/SemaTemplate/instantiate-attr.cpp vendor/clang/dist/test/SemaTemplate/instantiate-decl-init.cpp vendor/clang/dist/test/SemaTemplate/instantiate-overloaded-arrow.cpp vendor/clang/dist/tools/clang-cc/Options.cpp vendor/clang/dist/tools/clang-cc/Options.h vendor/clang/dist/utils/C++Tests/Clang-Code-Compile/ vendor/clang/dist/utils/C++Tests/Clang-Code-Compile/lit.local.cfg vendor/clang/dist/utils/C++Tests/Clang-Code-Syntax/ vendor/clang/dist/utils/C++Tests/Clang-Code-Syntax/lit.local.cfg vendor/clang/dist/utils/C++Tests/Clang-Syntax/ vendor/clang/dist/utils/C++Tests/Clang-Syntax/lit.local.cfg Deleted: vendor/clang/dist/lib/Analysis/AnalysisManager.cpp vendor/clang/dist/lib/Frontend/ManagerRegistry.cpp Modified: vendor/clang/dist/CMakeLists.txt vendor/clang/dist/Makefile vendor/clang/dist/NOTES.txt vendor/clang/dist/TODO.txt vendor/clang/dist/clang.xcodeproj/project.pbxproj vendor/clang/dist/docs/UsersManual.html vendor/clang/dist/include/clang-c/Index.h vendor/clang/dist/include/clang/AST/ASTContext.h vendor/clang/dist/include/clang/AST/Attr.h vendor/clang/dist/include/clang/AST/CanonicalType.h vendor/clang/dist/include/clang/AST/Decl.h vendor/clang/dist/include/clang/AST/DeclBase.h vendor/clang/dist/include/clang/AST/DeclCXX.h vendor/clang/dist/include/clang/AST/DeclContextInternals.h vendor/clang/dist/include/clang/AST/DeclNodes.def vendor/clang/dist/include/clang/AST/DeclObjC.h vendor/clang/dist/include/clang/AST/DeclTemplate.h vendor/clang/dist/include/clang/AST/DeclarationName.h vendor/clang/dist/include/clang/AST/Expr.h vendor/clang/dist/include/clang/AST/ExprCXX.h vendor/clang/dist/include/clang/AST/RecordLayout.h vendor/clang/dist/include/clang/AST/Redeclarable.h vendor/clang/dist/include/clang/AST/TemplateBase.h vendor/clang/dist/include/clang/AST/Type.h vendor/clang/dist/include/clang/AST/TypeLoc.h vendor/clang/dist/include/clang/AST/TypeLocBuilder.h vendor/clang/dist/include/clang/Analysis/Analyses/LiveVariables.h vendor/clang/dist/include/clang/Analysis/FlowSensitive/DataflowSolver.h vendor/clang/dist/include/clang/Analysis/LocalCheckers.h vendor/clang/dist/include/clang/Analysis/PathSensitive/AnalysisContext.h vendor/clang/dist/include/clang/Analysis/PathSensitive/AnalysisManager.h vendor/clang/dist/include/clang/Analysis/PathSensitive/BugReporter.h vendor/clang/dist/include/clang/Analysis/PathSensitive/BugType.h vendor/clang/dist/include/clang/Analysis/PathSensitive/Checker.h vendor/clang/dist/include/clang/Analysis/PathSensitive/CheckerVisitor.def vendor/clang/dist/include/clang/Analysis/PathSensitive/CheckerVisitor.h vendor/clang/dist/include/clang/Analysis/PathSensitive/Checkers/DereferenceChecker.h vendor/clang/dist/include/clang/Analysis/PathSensitive/GRExprEngine.h vendor/clang/dist/include/clang/Analysis/PathSensitive/GRState.h vendor/clang/dist/include/clang/Analysis/PathSensitive/GRWorkList.h vendor/clang/dist/include/clang/Analysis/PathSensitive/MemRegion.h vendor/clang/dist/include/clang/Analysis/PathSensitive/SVals.h vendor/clang/dist/include/clang/Analysis/PathSensitive/Store.h vendor/clang/dist/include/clang/Analysis/ProgramPoint.h vendor/clang/dist/include/clang/Analysis/Support/Optional.h vendor/clang/dist/include/clang/Analysis/Support/SaveAndRestore.h vendor/clang/dist/include/clang/Basic/Diagnostic.h vendor/clang/dist/include/clang/Basic/DiagnosticCommonKinds.td vendor/clang/dist/include/clang/Basic/DiagnosticFrontendKinds.td vendor/clang/dist/include/clang/Basic/DiagnosticGroups.td vendor/clang/dist/include/clang/Basic/DiagnosticLexKinds.td vendor/clang/dist/include/clang/Basic/DiagnosticParseKinds.td vendor/clang/dist/include/clang/Basic/DiagnosticSemaKinds.td vendor/clang/dist/include/clang/Basic/LangOptions.h vendor/clang/dist/include/clang/Basic/Makefile vendor/clang/dist/include/clang/Basic/TargetInfo.h vendor/clang/dist/include/clang/CodeGen/ModuleBuilder.h vendor/clang/dist/include/clang/Driver/Driver.h vendor/clang/dist/include/clang/Driver/Options.def vendor/clang/dist/include/clang/Driver/ToolChain.h vendor/clang/dist/include/clang/Driver/Types.h vendor/clang/dist/include/clang/Frontend/ASTConsumers.h vendor/clang/dist/include/clang/Frontend/Analyses.def vendor/clang/dist/include/clang/Frontend/AnalysisConsumer.h vendor/clang/dist/include/clang/Frontend/CommandLineSourceLoc.h vendor/clang/dist/include/clang/Frontend/DiagnosticOptions.h vendor/clang/dist/include/clang/Frontend/PCHReader.h vendor/clang/dist/include/clang/Frontend/PCHWriter.h vendor/clang/dist/include/clang/Frontend/TextDiagnosticPrinter.h vendor/clang/dist/include/clang/Frontend/TypeXML.def vendor/clang/dist/include/clang/Frontend/Utils.h vendor/clang/dist/include/clang/Lex/PTHManager.h vendor/clang/dist/include/clang/Lex/Preprocessor.h vendor/clang/dist/include/clang/Lex/Token.h vendor/clang/dist/include/clang/Parse/Action.h vendor/clang/dist/include/clang/Parse/AttributeList.h vendor/clang/dist/include/clang/Parse/DeclSpec.h vendor/clang/dist/include/clang/Parse/Ownership.h vendor/clang/dist/include/clang/Parse/Parser.h vendor/clang/dist/include/clang/Parse/Scope.h vendor/clang/dist/include/clang/Sema/CodeCompleteConsumer.h vendor/clang/dist/include/clang/Sema/ParseAST.h vendor/clang/dist/lib/AST/ASTContext.cpp vendor/clang/dist/lib/AST/CMakeLists.txt vendor/clang/dist/lib/AST/CXXInheritance.cpp vendor/clang/dist/lib/AST/Decl.cpp vendor/clang/dist/lib/AST/DeclBase.cpp vendor/clang/dist/lib/AST/DeclCXX.cpp vendor/clang/dist/lib/AST/DeclObjC.cpp vendor/clang/dist/lib/AST/DeclPrinter.cpp vendor/clang/dist/lib/AST/DeclTemplate.cpp vendor/clang/dist/lib/AST/DeclarationName.cpp vendor/clang/dist/lib/AST/Expr.cpp vendor/clang/dist/lib/AST/ExprCXX.cpp vendor/clang/dist/lib/AST/ExprConstant.cpp vendor/clang/dist/lib/AST/NestedNameSpecifier.cpp vendor/clang/dist/lib/AST/RecordLayoutBuilder.cpp vendor/clang/dist/lib/AST/StmtDumper.cpp vendor/clang/dist/lib/AST/StmtProfile.cpp vendor/clang/dist/lib/AST/TemplateBase.cpp vendor/clang/dist/lib/AST/Type.cpp vendor/clang/dist/lib/Analysis/AttrNonNullChecker.cpp vendor/clang/dist/lib/Analysis/BadCallChecker.cpp vendor/clang/dist/lib/Analysis/BasicObjCFoundationChecks.cpp vendor/clang/dist/lib/Analysis/BasicStore.cpp vendor/clang/dist/lib/Analysis/CFRefCount.cpp vendor/clang/dist/lib/Analysis/CMakeLists.txt vendor/clang/dist/lib/Analysis/CallGraph.cpp vendor/clang/dist/lib/Analysis/CheckSecuritySyntaxOnly.cpp vendor/clang/dist/lib/Analysis/DereferenceChecker.cpp vendor/clang/dist/lib/Analysis/DivZeroChecker.cpp vendor/clang/dist/lib/Analysis/ExplodedGraph.cpp vendor/clang/dist/lib/Analysis/GRCoreEngine.cpp vendor/clang/dist/lib/Analysis/GRExprEngine.cpp vendor/clang/dist/lib/Analysis/GRExprEngineInternalChecks.cpp vendor/clang/dist/lib/Analysis/GRState.cpp vendor/clang/dist/lib/Analysis/LiveVariables.cpp vendor/clang/dist/lib/Analysis/MemRegion.cpp vendor/clang/dist/lib/Analysis/NSErrorChecker.cpp vendor/clang/dist/lib/Analysis/RangeConstraintManager.cpp vendor/clang/dist/lib/Analysis/RegionStore.cpp vendor/clang/dist/lib/Analysis/SVals.cpp vendor/clang/dist/lib/Analysis/SValuator.cpp vendor/clang/dist/lib/Analysis/Store.cpp vendor/clang/dist/lib/Analysis/UndefinedArgChecker.cpp vendor/clang/dist/lib/Analysis/UndefinedAssignmentChecker.cpp vendor/clang/dist/lib/Analysis/VLASizeChecker.cpp vendor/clang/dist/lib/Basic/SourceManager.cpp vendor/clang/dist/lib/Basic/TargetInfo.cpp vendor/clang/dist/lib/Basic/Targets.cpp vendor/clang/dist/lib/Basic/Version.cpp vendor/clang/dist/lib/CodeGen/CGBlocks.cpp vendor/clang/dist/lib/CodeGen/CGBlocks.h vendor/clang/dist/lib/CodeGen/CGBuiltin.cpp vendor/clang/dist/lib/CodeGen/CGCXX.cpp vendor/clang/dist/lib/CodeGen/CGCXXClass.cpp vendor/clang/dist/lib/CodeGen/CGCXXExpr.cpp vendor/clang/dist/lib/CodeGen/CGCall.cpp vendor/clang/dist/lib/CodeGen/CGDebugInfo.cpp vendor/clang/dist/lib/CodeGen/CGDebugInfo.h vendor/clang/dist/lib/CodeGen/CGDecl.cpp vendor/clang/dist/lib/CodeGen/CGExpr.cpp vendor/clang/dist/lib/CodeGen/CGExprAgg.cpp vendor/clang/dist/lib/CodeGen/CGExprConstant.cpp vendor/clang/dist/lib/CodeGen/CGExprScalar.cpp vendor/clang/dist/lib/CodeGen/CGObjCGNU.cpp vendor/clang/dist/lib/CodeGen/CGObjCMac.cpp vendor/clang/dist/lib/CodeGen/CGRecordLayoutBuilder.cpp vendor/clang/dist/lib/CodeGen/CGRtti.cpp vendor/clang/dist/lib/CodeGen/CGStmt.cpp vendor/clang/dist/lib/CodeGen/CGVtable.cpp vendor/clang/dist/lib/CodeGen/CGVtable.h vendor/clang/dist/lib/CodeGen/CodeGenFunction.cpp vendor/clang/dist/lib/CodeGen/CodeGenFunction.h vendor/clang/dist/lib/CodeGen/CodeGenModule.cpp vendor/clang/dist/lib/CodeGen/CodeGenModule.h vendor/clang/dist/lib/CodeGen/CodeGenTypes.cpp vendor/clang/dist/lib/CodeGen/CodeGenTypes.h vendor/clang/dist/lib/CodeGen/Mangle.cpp vendor/clang/dist/lib/CodeGen/Mangle.h vendor/clang/dist/lib/CodeGen/ModuleBuilder.cpp vendor/clang/dist/lib/CodeGen/TargetABIInfo.cpp vendor/clang/dist/lib/Driver/ToolChains.h vendor/clang/dist/lib/Driver/Tools.cpp vendor/clang/dist/lib/Driver/Types.cpp vendor/clang/dist/lib/Frontend/ASTUnit.cpp vendor/clang/dist/lib/Frontend/AnalysisConsumer.cpp vendor/clang/dist/lib/Frontend/Backend.cpp vendor/clang/dist/lib/Frontend/CMakeLists.txt vendor/clang/dist/lib/Frontend/DependencyFile.cpp vendor/clang/dist/lib/Frontend/DocumentXML.cpp vendor/clang/dist/lib/Frontend/HTMLDiagnostics.cpp vendor/clang/dist/lib/Frontend/InitHeaderSearch.cpp vendor/clang/dist/lib/Frontend/InitPreprocessor.cpp vendor/clang/dist/lib/Frontend/PCHReader.cpp vendor/clang/dist/lib/Frontend/PCHReaderDecl.cpp vendor/clang/dist/lib/Frontend/PCHWriter.cpp vendor/clang/dist/lib/Frontend/PCHWriterDecl.cpp vendor/clang/dist/lib/Frontend/PlistDiagnostics.cpp vendor/clang/dist/lib/Frontend/PrintParserCallbacks.cpp vendor/clang/dist/lib/Frontend/PrintPreprocessedOutput.cpp vendor/clang/dist/lib/Frontend/RewriteObjC.cpp vendor/clang/dist/lib/Frontend/TextDiagnosticPrinter.cpp vendor/clang/dist/lib/Frontend/Warnings.cpp vendor/clang/dist/lib/Headers/stdint.h vendor/clang/dist/lib/Index/ResolveLocation.cpp vendor/clang/dist/lib/Lex/Lexer.cpp vendor/clang/dist/lib/Lex/PPCaching.cpp vendor/clang/dist/lib/Lex/PPExpressions.cpp vendor/clang/dist/lib/Lex/PTHLexer.cpp vendor/clang/dist/lib/Lex/Preprocessor.cpp vendor/clang/dist/lib/Parse/AttributeList.cpp vendor/clang/dist/lib/Parse/DeclSpec.cpp vendor/clang/dist/lib/Parse/MinimalAction.cpp vendor/clang/dist/lib/Parse/ParseDecl.cpp vendor/clang/dist/lib/Parse/ParseDeclCXX.cpp vendor/clang/dist/lib/Parse/ParseExprCXX.cpp vendor/clang/dist/lib/Parse/ParseObjc.cpp vendor/clang/dist/lib/Parse/ParseTemplate.cpp vendor/clang/dist/lib/Parse/Parser.cpp vendor/clang/dist/lib/Rewrite/DeltaTree.cpp vendor/clang/dist/lib/Sema/CodeCompleteConsumer.cpp vendor/clang/dist/lib/Sema/JumpDiagnostics.cpp vendor/clang/dist/lib/Sema/ParseAST.cpp vendor/clang/dist/lib/Sema/Sema.cpp vendor/clang/dist/lib/Sema/Sema.h vendor/clang/dist/lib/Sema/SemaAttr.cpp vendor/clang/dist/lib/Sema/SemaCXXCast.cpp vendor/clang/dist/lib/Sema/SemaCXXScopeSpec.cpp vendor/clang/dist/lib/Sema/SemaChecking.cpp vendor/clang/dist/lib/Sema/SemaCodeComplete.cpp vendor/clang/dist/lib/Sema/SemaDecl.cpp vendor/clang/dist/lib/Sema/SemaDeclAttr.cpp vendor/clang/dist/lib/Sema/SemaDeclCXX.cpp vendor/clang/dist/lib/Sema/SemaDeclObjC.cpp vendor/clang/dist/lib/Sema/SemaExceptionSpec.cpp vendor/clang/dist/lib/Sema/SemaExpr.cpp vendor/clang/dist/lib/Sema/SemaExprCXX.cpp vendor/clang/dist/lib/Sema/SemaInit.cpp vendor/clang/dist/lib/Sema/SemaLookup.cpp vendor/clang/dist/lib/Sema/SemaOverload.cpp vendor/clang/dist/lib/Sema/SemaOverload.h vendor/clang/dist/lib/Sema/SemaStmt.cpp vendor/clang/dist/lib/Sema/SemaTemplate.cpp vendor/clang/dist/lib/Sema/SemaTemplateDeduction.cpp vendor/clang/dist/lib/Sema/SemaTemplateInstantiate.cpp vendor/clang/dist/lib/Sema/SemaTemplateInstantiateDecl.cpp vendor/clang/dist/lib/Sema/SemaType.cpp vendor/clang/dist/lib/Sema/TreeTransform.h vendor/clang/dist/test/Analysis/CFDateGC.m vendor/clang/dist/test/Analysis/CFNumber.c vendor/clang/dist/test/Analysis/CFRetainRelease_NSAssertionHandler.m vendor/clang/dist/test/Analysis/CGColorSpace.c vendor/clang/dist/test/Analysis/CheckNSError.m vendor/clang/dist/test/Analysis/MissingDealloc.m vendor/clang/dist/test/Analysis/NSPanel.m vendor/clang/dist/test/Analysis/NSString.m vendor/clang/dist/test/Analysis/NSWindow.m vendor/clang/dist/test/Analysis/NoReturn.m vendor/clang/dist/test/Analysis/ObjCProperties.m vendor/clang/dist/test/Analysis/ObjCRetSigs.m vendor/clang/dist/test/Analysis/PR2599.m vendor/clang/dist/test/Analysis/PR2978.m vendor/clang/dist/test/Analysis/PR3991.m vendor/clang/dist/test/Analysis/array-struct.c vendor/clang/dist/test/Analysis/casts.c vendor/clang/dist/test/Analysis/casts.m vendor/clang/dist/test/Analysis/cfref_PR2519.c vendor/clang/dist/test/Analysis/cfref_rdar6080742.c vendor/clang/dist/test/Analysis/complex.c vendor/clang/dist/test/Analysis/concrete-address.c vendor/clang/dist/test/Analysis/conditional-op-missing-lhs.c vendor/clang/dist/test/Analysis/dead-stores.c vendor/clang/dist/test/Analysis/dead-stores.cpp vendor/clang/dist/test/Analysis/dead-stores.m vendor/clang/dist/test/Analysis/delegates.m vendor/clang/dist/test/Analysis/elementtype.c vendor/clang/dist/test/Analysis/exercise-ps.c vendor/clang/dist/test/Analysis/fields.c vendor/clang/dist/test/Analysis/func.c vendor/clang/dist/test/Analysis/misc-ps-64.m vendor/clang/dist/test/Analysis/misc-ps-basic-store.m vendor/clang/dist/test/Analysis/misc-ps-eager-assume.m vendor/clang/dist/test/Analysis/misc-ps-ranges.m vendor/clang/dist/test/Analysis/misc-ps-region-store-i386.m vendor/clang/dist/test/Analysis/misc-ps-region-store-x86_64.m vendor/clang/dist/test/Analysis/misc-ps-region-store.m vendor/clang/dist/test/Analysis/misc-ps.m vendor/clang/dist/test/Analysis/nil-receiver-undefined-larger-than-voidptr-ret.m vendor/clang/dist/test/Analysis/no-exit-cfg.c vendor/clang/dist/test/Analysis/no-outofbounds.c vendor/clang/dist/test/Analysis/null-deref-ps-region.c vendor/clang/dist/test/Analysis/null-deref-ps.c vendor/clang/dist/test/Analysis/outofbound.c vendor/clang/dist/test/Analysis/override-werror.c vendor/clang/dist/test/Analysis/pr4209.m vendor/clang/dist/test/Analysis/pr_2542_rdar_6793404.m vendor/clang/dist/test/Analysis/pr_4164.c vendor/clang/dist/test/Analysis/ptr-arith.c vendor/clang/dist/test/Analysis/rdar-6442306-1.m vendor/clang/dist/test/Analysis/rdar-6540084.m vendor/clang/dist/test/Analysis/rdar-6541136-region.c vendor/clang/dist/test/Analysis/rdar-6541136.c vendor/clang/dist/test/Analysis/rdar-6562655.m vendor/clang/dist/test/Analysis/rdar-6582778-basic-store.c vendor/clang/dist/test/Analysis/rdar-6600344-nil-receiver-undefined-struct-ret.m vendor/clang/dist/test/Analysis/rdar-7168531.m vendor/clang/dist/test/Analysis/refcnt_naming.m vendor/clang/dist/test/Analysis/region-1.m vendor/clang/dist/test/Analysis/retain-release-gc-only.m vendor/clang/dist/test/Analysis/retain-release.m vendor/clang/dist/test/Analysis/security-syntax-checks.m vendor/clang/dist/test/Analysis/stack-addr-ps.c vendor/clang/dist/test/Analysis/uninit-msg-expr.m vendor/clang/dist/test/Analysis/uninit-ps-rdar6145427.m vendor/clang/dist/test/Analysis/uninit-vals-ps.c vendor/clang/dist/test/Analysis/uninit-vals.m vendor/clang/dist/test/Analysis/unused-ivars.m vendor/clang/dist/test/CMakeLists.txt vendor/clang/dist/test/CXX/dcl.decl/dcl.meaning/dcl.fct.default/p4.cpp vendor/clang/dist/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p3.cpp vendor/clang/dist/test/CXX/dcl.decl/dcl.meaning/dcl.mptr/p3.cpp vendor/clang/dist/test/CXX/temp/temp.param/p1.cpp vendor/clang/dist/test/CXX/temp/temp.param/p12.cpp vendor/clang/dist/test/CXX/temp/temp.spec/temp.expl.spec/p3.cpp vendor/clang/dist/test/CXX/temp/temp.spec/temp.expl.spec/p4.cpp vendor/clang/dist/test/CodeCompletion/call.cpp vendor/clang/dist/test/CodeCompletion/enum-switch-case-qualified.cpp vendor/clang/dist/test/CodeCompletion/enum-switch-case.c vendor/clang/dist/test/CodeCompletion/enum-switch-case.cpp vendor/clang/dist/test/CodeCompletion/function-templates.cpp vendor/clang/dist/test/CodeCompletion/functions.cpp vendor/clang/dist/test/CodeCompletion/macros.c vendor/clang/dist/test/CodeCompletion/member-access.c vendor/clang/dist/test/CodeCompletion/member-access.cpp vendor/clang/dist/test/CodeCompletion/namespace-alias.cpp vendor/clang/dist/test/CodeCompletion/namespace.cpp vendor/clang/dist/test/CodeCompletion/nested-name-specifier.cpp vendor/clang/dist/test/CodeCompletion/operator.cpp vendor/clang/dist/test/CodeCompletion/ordinary-name.c vendor/clang/dist/test/CodeCompletion/property.m vendor/clang/dist/test/CodeCompletion/tag.c vendor/clang/dist/test/CodeCompletion/tag.cpp vendor/clang/dist/test/CodeCompletion/templates.cpp vendor/clang/dist/test/CodeCompletion/truncation.c vendor/clang/dist/test/CodeCompletion/using-namespace.cpp vendor/clang/dist/test/CodeCompletion/using.cpp vendor/clang/dist/test/CodeGen/2008-07-17-no-emit-on-error.c vendor/clang/dist/test/CodeGen/2008-07-22-bitfield-init-after-zero-len-array.c vendor/clang/dist/test/CodeGen/2008-07-29-override-alias-decl.c vendor/clang/dist/test/CodeGen/2008-07-30-implicit-initialization.c vendor/clang/dist/test/CodeGen/2008-07-31-asm-labels.c vendor/clang/dist/test/CodeGen/2009-10-20-GlobalDebug.c vendor/clang/dist/test/CodeGen/PR2001-bitfield-reload.c vendor/clang/dist/test/CodeGen/PR3589-freestanding-libcalls.c vendor/clang/dist/test/CodeGen/PR3613-static-decl.c vendor/clang/dist/test/CodeGen/PR4611-bitfield-layout.c vendor/clang/dist/test/CodeGen/address-space-field1.c vendor/clang/dist/test/CodeGen/address-space.c vendor/clang/dist/test/CodeGen/alias.c vendor/clang/dist/test/CodeGen/alignof.c vendor/clang/dist/test/CodeGen/always_inline.c vendor/clang/dist/test/CodeGen/arm-arguments.c vendor/clang/dist/test/CodeGen/asm-2.c vendor/clang/dist/test/CodeGen/asm-inout.c vendor/clang/dist/test/CodeGen/asm.c vendor/clang/dist/test/CodeGen/atomic.c vendor/clang/dist/test/CodeGen/attr-nodebug.c vendor/clang/dist/test/CodeGen/attr-noinline.c vendor/clang/dist/test/CodeGen/attr-used.c vendor/clang/dist/test/CodeGen/attributes.c vendor/clang/dist/test/CodeGen/bitfield-assign.c vendor/clang/dist/test/CodeGen/bitfield-promote.c vendor/clang/dist/test/CodeGen/bitfield.c vendor/clang/dist/test/CodeGen/blocks-1.c vendor/clang/dist/test/CodeGen/blocks-2.c vendor/clang/dist/test/CodeGen/blocks-aligned-byref-variable.c vendor/clang/dist/test/CodeGen/blocks-seq.c vendor/clang/dist/test/CodeGen/blocks.c vendor/clang/dist/test/CodeGen/builtin-count-zeros.c vendor/clang/dist/test/CodeGen/builtin-memfns.c vendor/clang/dist/test/CodeGen/builtin-nanf.c vendor/clang/dist/test/CodeGen/builtin-stackaddress.c vendor/clang/dist/test/CodeGen/builtins-ffs_parity_popcount.c vendor/clang/dist/test/CodeGen/builtins-powi.c vendor/clang/dist/test/CodeGen/builtins-x86.c vendor/clang/dist/test/CodeGen/builtins.c vendor/clang/dist/test/CodeGen/c-strings.c vendor/clang/dist/test/CodeGen/cleanup-stack.c vendor/clang/dist/test/CodeGen/compound-type.c vendor/clang/dist/test/CodeGen/conditional.c vendor/clang/dist/test/CodeGen/const-init.c vendor/clang/dist/test/CodeGen/constant-comparison.c vendor/clang/dist/test/CodeGen/constructor-attribute.c vendor/clang/dist/test/CodeGen/darwin-string-literals.c vendor/clang/dist/test/CodeGen/debug-info.c vendor/clang/dist/test/CodeGen/designated-initializers.c vendor/clang/dist/test/CodeGen/dllimport-dllexport.c vendor/clang/dist/test/CodeGen/emit-all-decls.c vendor/clang/dist/test/CodeGen/ext-vector-shuffle.c vendor/clang/dist/test/CodeGen/flexible-array-init.c vendor/clang/dist/test/CodeGen/functions.c vendor/clang/dist/test/CodeGen/global-decls.c vendor/clang/dist/test/CodeGen/init.c vendor/clang/dist/test/CodeGen/inline.c vendor/clang/dist/test/CodeGen/inline2.c vendor/clang/dist/test/CodeGen/libcalls.c vendor/clang/dist/test/CodeGen/lineno-dbginfo.c vendor/clang/dist/test/CodeGen/mandel.c vendor/clang/dist/test/CodeGen/no-common.c vendor/clang/dist/test/CodeGen/object-size.c vendor/clang/dist/test/CodeGen/packed-union.c vendor/clang/dist/test/CodeGen/parameter-passing.c vendor/clang/dist/test/CodeGen/pragma-pack-2.c vendor/clang/dist/test/CodeGen/pragma-pack-3.c vendor/clang/dist/test/CodeGen/predefined-expr.c vendor/clang/dist/test/CodeGen/private-extern.c vendor/clang/dist/test/CodeGen/rdr-6098585-default-after-caserange.c vendor/clang/dist/test/CodeGen/rdr-6098585-default-fallthrough-to-caserange.c vendor/clang/dist/test/CodeGen/rdr-6098585-empty-case-range.c vendor/clang/dist/test/CodeGen/rdr-6098585-fallthrough-to-empty-range.c vendor/clang/dist/test/CodeGen/rdr-6098585-unsigned-caserange.c vendor/clang/dist/test/CodeGen/stack-protector.c vendor/clang/dist/test/CodeGen/staticinit.c vendor/clang/dist/test/CodeGen/stdcall-fastcall.c vendor/clang/dist/test/CodeGen/string-init.c vendor/clang/dist/test/CodeGen/struct-passing.c vendor/clang/dist/test/CodeGen/struct-x86-darwin.c vendor/clang/dist/test/CodeGen/target-data.c vendor/clang/dist/test/CodeGen/tentative-decls.c vendor/clang/dist/test/CodeGen/trapv.c vendor/clang/dist/test/CodeGen/unreachable.c vendor/clang/dist/test/CodeGen/unwind-attr.c vendor/clang/dist/test/CodeGen/visibility.c vendor/clang/dist/test/CodeGen/volatile-1.c vendor/clang/dist/test/CodeGen/volatile.c vendor/clang/dist/test/CodeGen/x86.c vendor/clang/dist/test/CodeGen/x86_32-arguments.c vendor/clang/dist/test/CodeGen/x86_64-arguments.c vendor/clang/dist/test/CodeGenCXX/PR5050-constructor-conversion.cpp vendor/clang/dist/test/CodeGenCXX/array-construction.cpp vendor/clang/dist/test/CodeGenCXX/attr.cpp vendor/clang/dist/test/CodeGenCXX/call-arg-zero-temp.cpp vendor/clang/dist/test/CodeGenCXX/cast-conversion.cpp vendor/clang/dist/test/CodeGenCXX/class-layout.cpp vendor/clang/dist/test/CodeGenCXX/constructor-conversion.cpp vendor/clang/dist/test/CodeGenCXX/constructor-default-arg.cpp vendor/clang/dist/test/CodeGenCXX/constructor-for-array-members.cpp vendor/clang/dist/test/CodeGenCXX/constructor-template.cpp vendor/clang/dist/test/CodeGenCXX/conversion-function.cpp vendor/clang/dist/test/CodeGenCXX/convert-to-fptr.cpp vendor/clang/dist/test/CodeGenCXX/copy-assign-synthesis-1.cpp vendor/clang/dist/test/CodeGenCXX/copy-assign-synthesis.cpp vendor/clang/dist/test/CodeGenCXX/copy-constructor-elim.cpp vendor/clang/dist/test/CodeGenCXX/copy-constructor-synthesis.cpp vendor/clang/dist/test/CodeGenCXX/decl-ref-init.cpp vendor/clang/dist/test/CodeGenCXX/default-arg-temps.cpp vendor/clang/dist/test/CodeGenCXX/default-constructor-for-members.cpp vendor/clang/dist/test/CodeGenCXX/default-destructor-synthesis.cpp vendor/clang/dist/test/CodeGenCXX/delete.cpp vendor/clang/dist/test/CodeGenCXX/derived-to-base-conv.cpp vendor/clang/dist/test/CodeGenCXX/destructors.cpp vendor/clang/dist/test/CodeGenCXX/explicit-instantiation.cpp vendor/clang/dist/test/CodeGenCXX/extern-c.cpp vendor/clang/dist/test/CodeGenCXX/implicit-instantiation-1.cpp vendor/clang/dist/test/CodeGenCXX/mangle-subst.cpp vendor/clang/dist/test/CodeGenCXX/mangle.cpp vendor/clang/dist/test/CodeGenCXX/member-function-pointers.cpp vendor/clang/dist/test/CodeGenCXX/member-functions.cpp vendor/clang/dist/test/CodeGenCXX/member-pointers-zero-init.cpp vendor/clang/dist/test/CodeGenCXX/new.cpp vendor/clang/dist/test/CodeGenCXX/ptr-to-member-function.cpp vendor/clang/dist/test/CodeGenCXX/reinterpret-cast.cpp vendor/clang/dist/test/CodeGenCXX/static-init.cpp vendor/clang/dist/test/CodeGenCXX/temporaries.cpp vendor/clang/dist/test/CodeGenCXX/trivial-constructor-init.cpp vendor/clang/dist/test/CodeGenCXX/virt.cpp vendor/clang/dist/test/CodeGenCXX/x86_64-arguments.cpp vendor/clang/dist/test/CodeGenObjC/bitfield-1.m vendor/clang/dist/test/CodeGenObjC/bitfield-ivar-metadata.m vendor/clang/dist/test/CodeGenObjC/bitfield-ivar-offsets.m vendor/clang/dist/test/CodeGenObjC/blocks-1.m vendor/clang/dist/test/CodeGenObjC/blocks-2.m vendor/clang/dist/test/CodeGenObjC/blocks-3.m vendor/clang/dist/test/CodeGenObjC/blocks.m vendor/clang/dist/test/CodeGenObjC/category-super-class-meth.m vendor/clang/dist/test/CodeGenObjC/class-getter-dotsyntax.m vendor/clang/dist/test/CodeGenObjC/class-type.m vendor/clang/dist/test/CodeGenObjC/constant-strings.m vendor/clang/dist/test/CodeGenObjC/continuation-class.m vendor/clang/dist/test/CodeGenObjC/deadcode_strip_used_var.m vendor/clang/dist/test/CodeGenObjC/debug-info-linkagename.m vendor/clang/dist/test/CodeGenObjC/dot-syntax-1.m vendor/clang/dist/test/CodeGenObjC/dot-syntax.m vendor/clang/dist/test/CodeGenObjC/encode-test-1.m vendor/clang/dist/test/CodeGenObjC/encode-test-2.m vendor/clang/dist/test/CodeGenObjC/encode-test-3.m vendor/clang/dist/test/CodeGenObjC/encode-test-5.m vendor/clang/dist/test/CodeGenObjC/encode-test.m vendor/clang/dist/test/CodeGenObjC/forward-class-impl-metadata.m vendor/clang/dist/test/CodeGenObjC/hidden.m vendor/clang/dist/test/CodeGenObjC/image-info.m vendor/clang/dist/test/CodeGenObjC/implicit-objc_msgSend.m vendor/clang/dist/test/CodeGenObjC/interface-layout-64.m vendor/clang/dist/test/CodeGenObjC/interface.m vendor/clang/dist/test/CodeGenObjC/ivar-layout-64.m vendor/clang/dist/test/CodeGenObjC/ivar-layout-no-optimize.m vendor/clang/dist/test/CodeGenObjC/ivars.m vendor/clang/dist/test/CodeGenObjC/link-errors.m vendor/clang/dist/test/CodeGenObjC/message-arrays.m vendor/clang/dist/test/CodeGenObjC/messages-2.m vendor/clang/dist/test/CodeGenObjC/messages.m vendor/clang/dist/test/CodeGenObjC/metadata-symbols-32.m vendor/clang/dist/test/CodeGenObjC/metadata-symbols-64.m vendor/clang/dist/test/CodeGenObjC/metadata_symbols.m vendor/clang/dist/test/CodeGenObjC/newproperty-nested-synthesis-1.m vendor/clang/dist/test/CodeGenObjC/non-lazy-classes.m vendor/clang/dist/test/CodeGenObjC/objc-align.m vendor/clang/dist/test/CodeGenObjC/objc-assign-ivar.m vendor/clang/dist/test/CodeGenObjC/objc-gc-aggr-assign.m vendor/clang/dist/test/CodeGenObjC/objc-read-weak-byref.m vendor/clang/dist/test/CodeGenObjC/objc2-assign-global.m vendor/clang/dist/test/CodeGenObjC/objc2-ivar-assign.m vendor/clang/dist/test/CodeGenObjC/objc2-new-gc-api-strongcast.m vendor/clang/dist/test/CodeGenObjC/objc2-no-write-barrier.m vendor/clang/dist/test/CodeGenObjC/objc2-property-encode.m vendor/clang/dist/test/CodeGenObjC/objc2-protocol-enc.m vendor/clang/dist/test/CodeGenObjC/objc2-strong-cast.m vendor/clang/dist/test/CodeGenObjC/objc2-weak-assign.m vendor/clang/dist/test/CodeGenObjC/objc2-weak-compare.m vendor/clang/dist/test/CodeGenObjC/objc2-weak-ivar-debug.m vendor/clang/dist/test/CodeGenObjC/objc2-write-barrier-2.m vendor/clang/dist/test/CodeGenObjC/objc2-write-barrier-3.m vendor/clang/dist/test/CodeGenObjC/objc2-write-barrier-4.m vendor/clang/dist/test/CodeGenObjC/objc2-write-barrier-5.m vendor/clang/dist/test/CodeGenObjC/objc2-write-barrier.m vendor/clang/dist/test/CodeGenObjC/object-incr-decr-1.m vendor/clang/dist/test/CodeGenObjC/overloadable.m vendor/clang/dist/test/CodeGenObjC/property-aggr-type.m vendor/clang/dist/test/CodeGenObjC/property-agrr-getter.m vendor/clang/dist/test/CodeGenObjC/property-complex.m vendor/clang/dist/test/CodeGenObjC/property-getter-dot-syntax.m vendor/clang/dist/test/CodeGenObjC/property-incr-decr-1.m vendor/clang/dist/test/CodeGenObjC/property-setter-attr.m vendor/clang/dist/test/CodeGenObjC/property.m vendor/clang/dist/test/CodeGenObjC/protocol-in-extended-class.m vendor/clang/dist/test/CodeGenObjC/protocol-property-synth.m vendor/clang/dist/test/CodeGenObjC/protocols-lazy.m vendor/clang/dist/test/CodeGenObjC/protocols.m vendor/clang/dist/test/CodeGenObjC/runtime-fns.m vendor/clang/dist/test/CodeGenObjC/super-classmethod-category.m vendor/clang/dist/test/CodeGenObjC/synchronized.m vendor/clang/dist/test/CodeGenObjC/synthesize_ivar-cont-class.m vendor/clang/dist/test/CodeGenObjC/synthesize_ivar.m vendor/clang/dist/test/CodeGenObjC/try.m vendor/clang/dist/test/CodeGenObjC/unname-bf-metadata.m vendor/clang/dist/test/CodeGenObjC/variadic-sends.m vendor/clang/dist/test/Coverage/ast-printing.c vendor/clang/dist/test/Coverage/ast-printing.cpp vendor/clang/dist/test/Coverage/ast-printing.m vendor/clang/dist/test/Coverage/codegen-next.m vendor/clang/dist/test/Coverage/codegen.c vendor/clang/dist/test/Coverage/html-diagnostics.c vendor/clang/dist/test/Coverage/parse-callbacks.c vendor/clang/dist/test/Coverage/parse-callbacks.m vendor/clang/dist/test/Coverage/targets.c vendor/clang/dist/test/Driver/Xarch.c vendor/clang/dist/test/Driver/analyze.c vendor/clang/dist/test/Driver/arm-darwin-builtin.c vendor/clang/dist/test/Driver/ast.c vendor/clang/dist/test/Driver/bindings.c vendor/clang/dist/test/Driver/clang-translation.c vendor/clang/dist/test/Driver/clang_cpp.c vendor/clang/dist/test/Driver/clang_f_opts.c vendor/clang/dist/test/Driver/cxx-pth.cpp vendor/clang/dist/test/Driver/darwin-as.c vendor/clang/dist/test/Driver/darwin-cc.c vendor/clang/dist/test/Driver/darwin-ld.c vendor/clang/dist/test/Driver/default-toolchain.c vendor/clang/dist/test/Driver/dragonfly.c vendor/clang/dist/test/Driver/emit-llvm.c vendor/clang/dist/test/Driver/flags.c vendor/clang/dist/test/Driver/freebsd.c vendor/clang/dist/test/Driver/hello.c vendor/clang/dist/test/Driver/immediate-options.c vendor/clang/dist/test/Driver/lto.c vendor/clang/dist/test/Driver/openbsd.c vendor/clang/dist/test/Driver/parsing.c vendor/clang/dist/test/Driver/phases.c vendor/clang/dist/test/Driver/preprocessor.c vendor/clang/dist/test/Driver/pth.c vendor/clang/dist/test/Driver/redzone.c vendor/clang/dist/test/Driver/std.c vendor/clang/dist/test/Driver/unknown-gcc-arch.c vendor/clang/dist/test/Driver/x86_features.c vendor/clang/dist/test/FixIt/fixit-at.c vendor/clang/dist/test/FixIt/fixit-c90.c vendor/clang/dist/test/FixIt/fixit-errors-1.c vendor/clang/dist/test/FixIt/fixit-errors.c vendor/clang/dist/test/FixIt/fixit-objc.m vendor/clang/dist/test/FixIt/fixit-pmem.cpp vendor/clang/dist/test/FixIt/fixit.c vendor/clang/dist/test/FixIt/fixit.cpp vendor/clang/dist/test/Frontend/ast-codegen.c vendor/clang/dist/test/Frontend/ast-main.c vendor/clang/dist/test/Frontend/cpp-output.c vendor/clang/dist/test/Frontend/darwin-version.c vendor/clang/dist/test/Frontend/dependency-gen.c vendor/clang/dist/test/Frontend/rewrite-macros.c vendor/clang/dist/test/Frontend/stdin.c vendor/clang/dist/test/Index/c-index-api-test.m vendor/clang/dist/test/Index/c-index-pch.c vendor/clang/dist/test/Index/comments.c vendor/clang/dist/test/Index/find-decls.c vendor/clang/dist/test/Index/find-defs.c vendor/clang/dist/test/Index/find-refs.c vendor/clang/dist/test/Index/multiple-redecls.c vendor/clang/dist/test/Index/objc-decls.m vendor/clang/dist/test/Index/objc-message.m vendor/clang/dist/test/Index/resolve-loc.c vendor/clang/dist/test/Lexer/block_cmt_end.c vendor/clang/dist/test/Lexer/counter.c vendor/clang/dist/test/Lexer/digraph.c vendor/clang/dist/test/Lexer/dollar-idents.c vendor/clang/dist/test/Lexer/escape_newline.c vendor/clang/dist/test/Lexer/rdr-6096838.c vendor/clang/dist/test/Lexer/token-concat.c vendor/clang/dist/test/Misc/caret-diags-macros.c vendor/clang/dist/test/Misc/diag-mapping.c vendor/clang/dist/test/Misc/diag-mapping2.c vendor/clang/dist/test/Misc/message-length.c vendor/clang/dist/test/PCH/asm.c vendor/clang/dist/test/PCH/attrs.c vendor/clang/dist/test/PCH/blocks.c vendor/clang/dist/test/PCH/builtins.c vendor/clang/dist/test/PCH/enum.c vendor/clang/dist/test/PCH/exprs.c vendor/clang/dist/test/PCH/ext_vector.c vendor/clang/dist/test/PCH/external-defs.c vendor/clang/dist/test/PCH/functions.c vendor/clang/dist/test/PCH/fuzzy-pch.c vendor/clang/dist/test/PCH/line-directive.c vendor/clang/dist/test/PCH/method_pool.m vendor/clang/dist/test/PCH/multiple_decls.c vendor/clang/dist/test/PCH/nonvisible-external-defs.c vendor/clang/dist/test/PCH/objc_exprs.m vendor/clang/dist/test/PCH/objc_import.m vendor/clang/dist/test/PCH/objc_methods.m vendor/clang/dist/test/PCH/objc_property.m vendor/clang/dist/test/PCH/pr4489.c vendor/clang/dist/test/PCH/preprocess.c vendor/clang/dist/test/PCH/reloc.c vendor/clang/dist/test/PCH/stmts.c vendor/clang/dist/test/PCH/struct.c vendor/clang/dist/test/PCH/tentative-defs.c vendor/clang/dist/test/PCH/types.c vendor/clang/dist/test/PCH/va_arg.c vendor/clang/dist/test/PCH/variables.c vendor/clang/dist/test/Parser/2008-10-31-parse-noop-failure.c vendor/clang/dist/test/Parser/block-block-storageclass.c vendor/clang/dist/test/Parser/control-scope.c vendor/clang/dist/test/Parser/cxx-using-declaration.cpp vendor/clang/dist/test/Parser/objc-init.m vendor/clang/dist/test/Parser/objc-try-catch-1.m vendor/clang/dist/test/Preprocessor/_Pragma-dependency.c vendor/clang/dist/test/Preprocessor/_Pragma-physloc.c vendor/clang/dist/test/Preprocessor/assembler-with-cpp.c vendor/clang/dist/test/Preprocessor/builtin_line.c vendor/clang/dist/test/Preprocessor/comment_save_macro.c vendor/clang/dist/test/Preprocessor/cxx_and.cpp vendor/clang/dist/test/Preprocessor/cxx_bitand.cpp vendor/clang/dist/test/Preprocessor/cxx_bitor.cpp vendor/clang/dist/test/Preprocessor/cxx_compl.cpp vendor/clang/dist/test/Preprocessor/cxx_not.cpp vendor/clang/dist/test/Preprocessor/cxx_not_eq.cpp vendor/clang/dist/test/Preprocessor/cxx_oper_keyword.cpp vendor/clang/dist/test/Preprocessor/cxx_or.cpp vendor/clang/dist/test/Preprocessor/cxx_true.cpp vendor/clang/dist/test/Preprocessor/cxx_xor.cpp vendor/clang/dist/test/Preprocessor/dependencies-and-pp.c vendor/clang/dist/test/Preprocessor/dump-options.c vendor/clang/dist/test/Preprocessor/dump_macros.c vendor/clang/dist/test/Preprocessor/expr_comma.c vendor/clang/dist/test/Preprocessor/expr_invalid_tok.c vendor/clang/dist/test/Preprocessor/expr_liveness.c vendor/clang/dist/test/Preprocessor/feature_tests.c vendor/clang/dist/test/Preprocessor/hash_line.c vendor/clang/dist/test/Preprocessor/header_lookup1.c vendor/clang/dist/test/Preprocessor/if_warning.c vendor/clang/dist/test/Preprocessor/include-pth.c vendor/clang/dist/test/Preprocessor/init.c vendor/clang/dist/test/Preprocessor/line-directive.c vendor/clang/dist/test/Preprocessor/macro-multiline.c vendor/clang/dist/test/Preprocessor/macro_disable.c vendor/clang/dist/test/Preprocessor/macro_expand.c vendor/clang/dist/test/Preprocessor/macro_fn_comma_swallow.c vendor/clang/dist/test/Preprocessor/macro_fn_disable_expand.c vendor/clang/dist/test/Preprocessor/macro_fn_lparen_scan.c vendor/clang/dist/test/Preprocessor/macro_fn_preexpand.c vendor/clang/dist/test/Preprocessor/macro_fn_varargs_iso.c vendor/clang/dist/test/Preprocessor/macro_fn_varargs_named.c vendor/clang/dist/test/Preprocessor/macro_paste_c_block_comment.c vendor/clang/dist/test/Preprocessor/macro_paste_commaext.c vendor/clang/dist/test/Preprocessor/macro_paste_empty.c vendor/clang/dist/test/Preprocessor/macro_paste_hard.c vendor/clang/dist/test/Preprocessor/macro_rescan.c vendor/clang/dist/test/Preprocessor/macro_rescan2.c vendor/clang/dist/test/Preprocessor/objc-pp.m vendor/clang/dist/test/Preprocessor/optimize.c vendor/clang/dist/test/Preprocessor/pic.c vendor/clang/dist/test/Preprocessor/pragma_unknown.c vendor/clang/dist/test/Preprocessor/print_line_track.c vendor/clang/dist/test/Preprocessor/stdint.c vendor/clang/dist/test/Preprocessor/x86_target_features.c vendor/clang/dist/test/Rewriter/objc-ivar-receiver-1.m vendor/clang/dist/test/Sema/128bitint.c vendor/clang/dist/test/Sema/PR2727.c vendor/clang/dist/test/Sema/PR2728.c vendor/clang/dist/test/Sema/attr-format_arg.c vendor/clang/dist/test/Sema/attr-malloc.c vendor/clang/dist/test/Sema/block-byref-args.c vendor/clang/dist/test/Sema/block-storageclass.c vendor/clang/dist/test/Sema/builtin-object-size.c vendor/clang/dist/test/Sema/callingconv.c vendor/clang/dist/test/Sema/check-increment.c vendor/clang/dist/test/Sema/compare.c vendor/clang/dist/test/Sema/conditional-expr.c vendor/clang/dist/test/Sema/const-eval.c vendor/clang/dist/test/Sema/expr-comma-c89.c vendor/clang/dist/test/Sema/expr-comma.c vendor/clang/dist/test/Sema/format-attr-pr4470.c vendor/clang/dist/test/Sema/format-strings.c vendor/clang/dist/test/Sema/i-c-e.c vendor/clang/dist/test/Sema/implicit-builtin-redecl.c vendor/clang/dist/test/Sema/implicit-def.c vendor/clang/dist/test/Sema/parentheses.c vendor/clang/dist/test/Sema/pragma-pack-4.c vendor/clang/dist/test/Sema/return.c vendor/clang/dist/test/Sema/shift.c vendor/clang/dist/test/Sema/ucn-cstring.c vendor/clang/dist/test/Sema/varargs.c vendor/clang/dist/test/Sema/wchar.c vendor/clang/dist/test/Sema/x86-intrinsics-headers.c vendor/clang/dist/test/SemaCXX/__null.cpp vendor/clang/dist/test/SemaCXX/arrow-operator.cpp vendor/clang/dist/test/SemaCXX/cast-conversion.cpp vendor/clang/dist/test/SemaCXX/compare.cpp vendor/clang/dist/test/SemaCXX/composite-pointer-type.cpp vendor/clang/dist/test/SemaCXX/conditional-expr.cpp vendor/clang/dist/test/SemaCXX/constructor-initializer.cpp vendor/clang/dist/test/SemaCXX/conversion-function.cpp vendor/clang/dist/test/SemaCXX/decltype-this.cpp vendor/clang/dist/test/SemaCXX/default-constructor-initializers.cpp vendor/clang/dist/test/SemaCXX/dependent-types.cpp vendor/clang/dist/test/SemaCXX/friend-class-nodecl.cpp vendor/clang/dist/test/SemaCXX/linkage-spec.cpp vendor/clang/dist/test/SemaCXX/member-expr.cpp vendor/clang/dist/test/SemaCXX/member-pointer-size.cpp vendor/clang/dist/test/SemaCXX/new-delete.cpp vendor/clang/dist/test/SemaCXX/overload-call.cpp vendor/clang/dist/test/SemaCXX/overloaded-builtin-operators.cpp vendor/clang/dist/test/SemaCXX/overloaded-operator.cpp vendor/clang/dist/test/SemaCXX/pseudo-destructors.cpp vendor/clang/dist/test/SemaCXX/static-cast.cpp vendor/clang/dist/test/SemaCXX/using-decl-1.cpp vendor/clang/dist/test/SemaCXX/using-decl-templates.cpp vendor/clang/dist/test/SemaCXX/value-initialization.cpp vendor/clang/dist/test/SemaCXX/vararg-non-pod.cpp vendor/clang/dist/test/SemaCXX/warn-for-var-in-else.cpp vendor/clang/dist/test/SemaCXX/warn-unused-variables.cpp vendor/clang/dist/test/SemaObjC/call-super-2.m vendor/clang/dist/test/SemaObjC/class-method-lookup.m vendor/clang/dist/test/SemaObjC/compare-qualified-id.m vendor/clang/dist/test/SemaObjC/continuation-class-err.m vendor/clang/dist/test/SemaObjC/deref-interface.m vendor/clang/dist/test/SemaObjC/ivar-sem-check-2.m vendor/clang/dist/test/SemaObjC/method-arg-decay.m vendor/clang/dist/test/SemaObjC/objc-string-constant.m vendor/clang/dist/test/SemaObjC/property-category-1.m vendor/clang/dist/test/SemaObjC/property-nonfragile-abi.m vendor/clang/dist/test/SemaObjC/sizeof-interface.m vendor/clang/dist/test/SemaObjC/static-ivar-ref-1.m vendor/clang/dist/test/SemaObjC/string.m vendor/clang/dist/test/SemaObjC/synthesized-ivar.m vendor/clang/dist/test/SemaObjC/unused.m vendor/clang/dist/test/SemaObjC/warn-selector-selection.m vendor/clang/dist/test/SemaTemplate/class-template-decl.cpp vendor/clang/dist/test/SemaTemplate/class-template-spec.cpp vendor/clang/dist/test/SemaTemplate/constructor-template.cpp vendor/clang/dist/test/SemaTemplate/default-arguments.cpp vendor/clang/dist/test/SemaTemplate/default-expr-arguments.cpp vendor/clang/dist/test/SemaTemplate/enum-argument.cpp vendor/clang/dist/test/SemaTemplate/example-dynarray.cpp vendor/clang/dist/test/SemaTemplate/instantiate-member-pointers.cpp vendor/clang/dist/test/SemaTemplate/instantiate-member-template.cpp vendor/clang/dist/test/SemaTemplate/instantiate-template-template-parm.cpp vendor/clang/dist/test/SemaTemplate/instantiate-using-decl.cpp vendor/clang/dist/test/SemaTemplate/instantiation-default-2.cpp vendor/clang/dist/test/SemaTemplate/member-function-template.cpp vendor/clang/dist/test/SemaTemplate/nested-name-spec-template.cpp vendor/clang/dist/test/SemaTemplate/nested-template.cpp vendor/clang/dist/test/SemaTemplate/operator-template.cpp vendor/clang/dist/test/SemaTemplate/temp_arg_nontype.cpp vendor/clang/dist/test/SemaTemplate/temp_arg_template.cpp vendor/clang/dist/test/SemaTemplate/value-dependent-null-pointer-constant.cpp vendor/clang/dist/test/lit.cfg vendor/clang/dist/test/lit.site.cfg.in vendor/clang/dist/tools/CIndex/CIndex.cpp vendor/clang/dist/tools/CIndex/CIndex.exports vendor/clang/dist/tools/CIndex/CMakeLists.txt vendor/clang/dist/tools/CIndex/Makefile vendor/clang/dist/tools/CMakeLists.txt vendor/clang/dist/tools/c-index-test/c-index-test.c vendor/clang/dist/tools/clang-cc/CMakeLists.txt vendor/clang/dist/tools/clang-cc/clang-cc.cpp vendor/clang/dist/tools/driver/driver.cpp vendor/clang/dist/utils/C++Tests/LLVM-Syntax/lit.local.cfg vendor/clang/dist/utils/C++Tests/lit.cfg vendor/clang/dist/utils/ccc-analyzer vendor/clang/dist/utils/scan-build vendor/clang/dist/www/get_started.html vendor/clang/dist/www/hacking.html Modified: vendor/clang/dist/CMakeLists.txt ============================================================================== --- vendor/clang/dist/CMakeLists.txt Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/CMakeLists.txt Wed Nov 18 14:59:57 2009 (r199482) @@ -94,6 +94,11 @@ install(DIRECTORY include/ add_definitions( -D_GNU_SOURCE ) +option(CLANG_BUILD_EXAMPLES "Build CLANG example programs." OFF) +if(CLANG_BUILD_EXAMPLES) + add_subdirectory(examples) +endif () + add_subdirectory(include) add_subdirectory(lib) add_subdirectory(tools) Modified: vendor/clang/dist/Makefile ============================================================================== --- vendor/clang/dist/Makefile Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/Makefile Wed Nov 18 14:59:57 2009 (r199482) @@ -1,6 +1,12 @@ LEVEL = ../.. DIRS := include lib tools docs +PARALLEL_DIRS := + +ifeq ($(BUILD_EXAMPLES),1) + PARALLEL_DIRS += examples +endif + include $(LEVEL)/Makefile.common ifneq ($(PROJ_SRC_ROOT),$(PROJ_OBJ_ROOT)) Modified: vendor/clang/dist/NOTES.txt ============================================================================== --- vendor/clang/dist/NOTES.txt Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/NOTES.txt Wed Nov 18 14:59:57 2009 (r199482) @@ -50,7 +50,7 @@ TODO: File Manager Speedup: //===---------------------------------------------------------------------===// // Specifying targets: -triple and -arch -===---------------------------------------------------------------------===// +//===---------------------------------------------------------------------===// The clang supports "-triple" and "-arch" options. At most one -triple and one -arch option may be specified. Both are optional. Modified: vendor/clang/dist/TODO.txt ============================================================================== --- vendor/clang/dist/TODO.txt Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/TODO.txt Wed Nov 18 14:59:57 2009 (r199482) @@ -66,3 +66,12 @@ More ideas for code modification hints: - If a class member is defined out-of-line but isn't in the class declaration (and there are no close matches!), provide the option to add an in-class declaration. - Fix-it hints for the inclusion of headers when needed for particular features (e.g., <typeinfo> for typeid) - Change "foo.bar" to "foo->bar" when "foo" is a pointer. + +//===---------------------------------------------------------------------===// + +Options to support: + -Wfatal-errors + -ftabstop=width + -fpreprocessed mode. + -nostdinc++ + -imultilib Modified: vendor/clang/dist/clang.xcodeproj/project.pbxproj ============================================================================== --- vendor/clang/dist/clang.xcodeproj/project.pbxproj Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/clang.xcodeproj/project.pbxproj Wed Nov 18 14:59:57 2009 (r199482) @@ -46,6 +46,9 @@ 1A869AA80BA21ABA008DA07A /* LiteralSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A869AA70BA21ABA008DA07A /* LiteralSupport.cpp */; }; 1AA1D91810125DE30078DEBC /* RecordLayoutBuilder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AA1D91610125DE30078DEBC /* RecordLayoutBuilder.cpp */; }; 1ABC36940C7A4BDC006DB0AB /* CGBuiltin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ABC36930C7A4BDC006DB0AB /* CGBuiltin.cpp */; }; + 1ADD795410A90C6100741BBA /* TypePrinter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ADD795110A90C6100741BBA /* TypePrinter.cpp */; }; + 1ADD795510A90C6100741BBA /* TypeLoc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ADD795210A90C6100741BBA /* TypeLoc.cpp */; }; + 1ADD795610A90C6100741BBA /* TemplateBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ADD795310A90C6100741BBA /* TemplateBase.cpp */; }; 1ADF47AF0F782C3200E48A8A /* SemaTemplateInstantiateDecl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ADF47AE0F782C3200E48A8A /* SemaTemplateInstantiateDecl.cpp */; }; 1AE4EE3E103B89ED00888A23 /* StmtProfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE4EE3D103B89ED00888A23 /* StmtProfile.cpp */; }; 1AE4EE40103B8A0A00888A23 /* TargetABIInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE4EE3F103B8A0A00888A23 /* TargetABIInfo.cpp */; }; @@ -362,6 +365,7 @@ 1A2A54B30FD1DD1C00F4CE45 /* StmtXML.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = StmtXML.cpp; path = lib/Frontend/StmtXML.cpp; sourceTree = "<group>"; }; 1A2A54B40FD1DD1C00F4CE45 /* Warnings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Warnings.cpp; path = lib/Frontend/Warnings.cpp; sourceTree = "<group>"; }; 1A30A9E80B93A4C800201A91 /* ExprCXX.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ExprCXX.h; path = clang/AST/ExprCXX.h; sourceTree = "<group>"; tabWidth = 2; }; + 1A31B27210ACE6DA009E0C8B /* GlobalDecl.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = GlobalDecl.h; path = lib/CodeGen/GlobalDecl.h; sourceTree = "<group>"; tabWidth = 2; }; 1A32C17E0E1C87AD00A6B483 /* ExprConstant.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ExprConstant.cpp; path = lib/AST/ExprConstant.cpp; sourceTree = "<group>"; tabWidth = 2; }; 1A376A2C0D4AED9B002A1C52 /* CGExprConstant.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGExprConstant.cpp; path = lib/CodeGen/CGExprConstant.cpp; sourceTree = "<group>"; tabWidth = 2; }; 1A471AB40F437BC500753CE8 /* CGBlocks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGBlocks.cpp; path = lib/CodeGen/CGBlocks.cpp; sourceTree = "<group>"; tabWidth = 2; }; @@ -396,6 +400,9 @@ 1AA1D91710125DE30078DEBC /* RecordLayoutBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = RecordLayoutBuilder.h; path = lib/AST/RecordLayoutBuilder.h; sourceTree = "<group>"; tabWidth = 2; }; 1AB290021045858B00FE33D8 /* PartialDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = PartialDiagnostic.h; sourceTree = "<group>"; tabWidth = 2; }; 1ABC36930C7A4BDC006DB0AB /* CGBuiltin.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGBuiltin.cpp; path = lib/CodeGen/CGBuiltin.cpp; sourceTree = "<group>"; tabWidth = 2; }; + 1ADD795110A90C6100741BBA /* TypePrinter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TypePrinter.cpp; path = lib/AST/TypePrinter.cpp; sourceTree = "<group>"; }; + 1ADD795210A90C6100741BBA /* TypeLoc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TypeLoc.cpp; path = lib/AST/TypeLoc.cpp; sourceTree = "<group>"; }; + 1ADD795310A90C6100741BBA /* TemplateBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TemplateBase.cpp; path = lib/AST/TemplateBase.cpp; sourceTree = "<group>"; }; 1ADF47AE0F782C3200E48A8A /* SemaTemplateInstantiateDecl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaTemplateInstantiateDecl.cpp; path = lib/Sema/SemaTemplateInstantiateDecl.cpp; sourceTree = "<group>"; tabWidth = 2; }; 1AE4EE3B103B89CA00888A23 /* TreeTransform.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TreeTransform.h; path = lib/Sema/TreeTransform.h; sourceTree = "<group>"; tabWidth = 2; }; 1AE4EE3D103B89ED00888A23 /* StmtProfile.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = StmtProfile.cpp; path = lib/AST/StmtProfile.cpp; sourceTree = "<group>"; tabWidth = 2; }; @@ -1289,6 +1296,7 @@ DE928B7E0C0A615600231DA4 /* CodeGenModule.cpp */, DEEBC3BB0C2363BC00A9FE82 /* CodeGenTypes.cpp */, DEEBC3B90C2363B800A9FE82 /* CodeGenTypes.h */, + 1A31B27210ACE6DA009E0C8B /* GlobalDecl.h */, 1A2193CC0F45EEB700C0713D /* Mangle.cpp */, 1A2193CD0F45EEB700C0713D /* Mangle.h */, DE928B120C05659200231DA4 /* ModuleBuilder.cpp */, @@ -1385,8 +1393,11 @@ DE34621C0AFEB19B00DBC861 /* StmtPrinter.cpp */, 1AE4EE3D103B89ED00888A23 /* StmtProfile.cpp */, 35CFFDFF0CA1CBCB00E6F2BE /* StmtViz.cpp */, + 1ADD795310A90C6100741BBA /* TemplateBase.cpp */, DEDFF8870F848CF80035BD10 /* TemplateName.cpp */, DE75EDF00B06880E0020CF81 /* Type.cpp */, + 1ADD795210A90C6100741BBA /* TypeLoc.cpp */, + 1ADD795110A90C6100741BBA /* TypePrinter.cpp */, ); name = AST; sourceTree = "<group>"; @@ -1919,6 +1930,9 @@ 1A6C01F7108128710072DEE4 /* CGRtti.cpp in Sources */, 1A81AA19108144F40094E50B /* CGVtable.cpp in Sources */, 1AF1B50F109A4FB800AFAFAC /* CGException.cpp in Sources */, + 1ADD795410A90C6100741BBA /* TypePrinter.cpp in Sources */, + 1ADD795510A90C6100741BBA /* TypeLoc.cpp in Sources */, + 1ADD795610A90C6100741BBA /* TemplateBase.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; Modified: vendor/clang/dist/docs/UsersManual.html ============================================================================== --- vendor/clang/dist/docs/UsersManual.html Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/docs/UsersManual.html Wed Nov 18 14:59:57 2009 (r199482) @@ -126,7 +126,7 @@ reasonably possible, easing migration fr <p>In addition to language specific features, Clang has a variety of features that depend on what CPU architecture or operating system is being compiled for. -Please see the <a href="target_features">Target-Specific Features and +Please see the <a href="#target_features">Target-Specific Features and Limitations</a> section for more details.</p> <p>The rest of the introduction introduces some basic <a Modified: vendor/clang/dist/include/clang-c/Index.h ============================================================================== --- vendor/clang/dist/include/clang-c/Index.h Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/include/clang-c/Index.h Wed Nov 18 14:59:57 2009 (r199482) @@ -115,6 +115,26 @@ typedef struct { /* A unique token for looking up "visible" CXDecls from a CXTranslationUnit. */ typedef void *CXEntity; +/** + * For functions returning a string that might or might not need + * to be internally allocated and freed. + * Use clang_getCString to access the C string value. + * Use clang_disposeString to free the value. + * Treat it as an opaque type. + */ +typedef struct { + const char *Spelling; + /* A 1 value indicates the clang_ indexing API needed to allocate the string + (and it must be freed by clang_disposeString()). */ + int MustFreeString; +} CXString; + +/* Get C string pointer from a CXString. */ +CINDEX_LINKAGE const char *clang_getCString(CXString string); + +/* Free CXString. */ +CINDEX_LINKAGE void clang_disposeString(CXString string); + /** * \brief clang_createIndex() provides a shared context for creating * translation units. It provides two options: @@ -155,8 +175,7 @@ typedef void *CXEntity; CINDEX_LINKAGE CXIndex clang_createIndex(int excludeDeclarationsFromPCH, int displayDiagnostics); CINDEX_LINKAGE void clang_disposeIndex(CXIndex); - -CINDEX_LINKAGE const char *clang_getTranslationUnitSpelling(CXTranslationUnit CTUnit); +CINDEX_LINKAGE CXString clang_getTranslationUnitSpelling(CXTranslationUnit CTUnit); /* * \brief Create a translation unit from an AST file (-emit-ast). @@ -260,7 +279,7 @@ CINDEX_LINKAGE CXEntity clang_getEntity( */ CINDEX_LINKAGE CXCursor clang_getCursorFromDecl(CXDecl); CINDEX_LINKAGE CXEntity clang_getEntityFromDecl(CXDecl); -CINDEX_LINKAGE const char *clang_getDeclSpelling(CXDecl); +CINDEX_LINKAGE CXString clang_getDeclSpelling(CXDecl); CINDEX_LINKAGE unsigned clang_getDeclLine(CXDecl); CINDEX_LINKAGE unsigned clang_getDeclColumn(CXDecl); CINDEX_LINKAGE const char *clang_getDeclSource(CXDecl); /* deprecate */ @@ -275,6 +294,8 @@ CINDEX_LINKAGE CXFile clang_getDeclSourc */ CINDEX_LINKAGE CXCursor clang_getCursor(CXTranslationUnit, const char *source_name, unsigned line, unsigned column); + +CINDEX_LINKAGE CXCursor clang_getNullCursor(void); CINDEX_LINKAGE enum CXCursorKind clang_getCursorKind(CXCursor); CINDEX_LINKAGE unsigned clang_isDeclaration(enum CXCursorKind); @@ -282,9 +303,11 @@ CINDEX_LINKAGE unsigned clang_isReferenc CINDEX_LINKAGE unsigned clang_isDefinition(enum CXCursorKind); CINDEX_LINKAGE unsigned clang_isInvalid(enum CXCursorKind); +CINDEX_LINKAGE unsigned clang_equalCursors(CXCursor, CXCursor); + CINDEX_LINKAGE unsigned clang_getCursorLine(CXCursor); CINDEX_LINKAGE unsigned clang_getCursorColumn(CXCursor); -CINDEX_LINKAGE const char *clang_getCursorSpelling(CXCursor); +CINDEX_LINKAGE CXString clang_getCursorSpelling(CXCursor); CINDEX_LINKAGE const char *clang_getCursorSource(CXCursor); /* deprecate */ CINDEX_LINKAGE CXFile clang_getCursorSourceFile(CXCursor); @@ -305,6 +328,328 @@ CINDEX_LINKAGE void clang_getDefinitionS */ CINDEX_LINKAGE CXDecl clang_getCursorDecl(CXCursor); +/** + * \brief A semantic string that describes a code-completion result. + * + * A semantic string that describes the formatting of a code-completion + * result as a single "template" of text that should be inserted into the + * source buffer when a particular code-completion result is selected. + * Each semantic string is made up of some number of "chunks", each of which + * contains some text along with a description of what that text means, e.g., + * the name of the entity being referenced, whether the text chunk is part of + * the template, or whether it is a "placeholder" that the user should replace + * with actual code,of a specific kind. See \c CXCompletionChunkKind for a + * description of the different kinds of chunks. + */ +typedef void *CXCompletionString; + +/** + * \brief A single result of code completion. + */ +typedef struct { + /** + * \brief The kind of entity that this completion refers to. + * + * The cursor kind will be a macro, keyword, or a declaration (one of the + * *Decl cursor kinds), describing the entity that the completion is + * referring to. + * + * \todo In the future, we would like to provide a full cursor, to allow + * the client to extract additional information from declaration. + */ + enum CXCursorKind CursorKind; + + /** + * \brief The code-completion string that describes how to insert this + * code-completion result into the editing buffer. + */ + CXCompletionString CompletionString; +} CXCompletionResult; + +/** + * \brief Describes a single piece of text within a code-completion string. + * + * Each "chunk" within a code-completion string (\c CXCompletionString) is + * either a piece of text with a specific "kind" that describes how that text + * should be interpreted by the client or is another completion string. + */ +enum CXCompletionChunkKind { + /** + * \brief A code-completion string that describes "optional" text that + * could be a part of the template (but is not required). + * + * The Optional chunk is the only kind of chunk that has a code-completion + * string for its representation, which is accessible via + * \c clang_getCompletionChunkCompletionString(). The code-completion string + * describes an additional part of the template that is completely optional. + * For example, optional chunks can be used to describe the placeholders for + * arguments that match up with defaulted function parameters, e.g. given: + * + * \code + * void f(int x, float y = 3.14, double z = 2.71828); + * \endcode + * + * The code-completion string for this function would contain: + * - a TypedText chunk for "f". + * - a LeftParen chunk for "(". + * - a Placeholder chunk for "int x" + * - an Optional chunk containing the remaining defaulted arguments, e.g., + * - a Comma chunk for "," + * - a Placeholder chunk for "float x" + * - an Optional chunk containing the last defaulted argument: + * - a Comma chunk for "," + * - a Placeholder chunk for "double z" + * - a RightParen chunk for ")" + * + * There are many ways two handle Optional chunks. Two simple approaches are: + * - Completely ignore optional chunks, in which case the template for the + * function "f" would only include the first parameter ("int x"). + * - Fully expand all optional chunks, in which case the template for the + * function "f" would have all of the parameters. + */ + CXCompletionChunk_Optional, + /** + * \brief Text that a user would be expected to type to get this + * code-completion result. + * + * There will be exactly one "typed text" chunk in a semantic string, which + * will typically provide the spelling of a keyword or the name of a + * declaration that could be used at the current code point. Clients are + * expected to filter the code-completion results based on the text in this + * chunk. + */ + CXCompletionChunk_TypedText, + /** + * \brief Text that should be inserted as part of a code-completion result. + * + * A "text" chunk represents text that is part of the template to be + * inserted into user code should this particular code-completion result + * be selected. + */ + CXCompletionChunk_Text, + /** + * \brief Placeholder text that should be replaced by the user. + * + * A "placeholder" chunk marks a place where the user should insert text + * into the code-completion template. For example, placeholders might mark + * the function parameters for a function declaration, to indicate that the + * user should provide arguments for each of those parameters. The actual + * text in a placeholder is a suggestion for the text to display before + * the user replaces the placeholder with real code. + */ + CXCompletionChunk_Placeholder, + /** + * \brief Informative text that should be displayed but never inserted as + * part of the template. + * + * An "informative" chunk contains annotations that can be displayed to + * help the user decide whether a particular code-completion result is the + * right option, but which is not part of the actual template to be inserted + * by code completion. + */ + CXCompletionChunk_Informative, + /** + * \brief Text that describes the current parameter when code-completion is + * referring to function call, message send, or template specialization. + * + * A "current parameter" chunk occurs when code-completion is providing + * information about a parameter corresponding to the argument at the + * code-completion point. For example, given a function + * + * \code + * int add(int x, int y); + * \endcode + * + * and the source code \c add(, where the code-completion point is after the + * "(", the code-completion string will contain a "current parameter" chunk + * for "int x", indicating that the current argument will initialize that + * parameter. After typing further, to \c add(17, (where the code-completion + * point is after the ","), the code-completion string will contain a + * "current paremeter" chunk to "int y". + */ + CXCompletionChunk_CurrentParameter, + /** + * \brief A left parenthesis ('('), used to initiate a function call or + * signal the beginning of a function parameter list. + */ + CXCompletionChunk_LeftParen, + /** + * \brief A right parenthesis (')'), used to finish a function call or + * signal the end of a function parameter list. + */ + CXCompletionChunk_RightParen, + /** + * \brief A left bracket ('['). + */ + CXCompletionChunk_LeftBracket, + /** + * \brief A right bracket (']'). + */ + CXCompletionChunk_RightBracket, + /** + * \brief A left brace ('{'). + */ + CXCompletionChunk_LeftBrace, + /** + * \brief A right brace ('}'). + */ + CXCompletionChunk_RightBrace, + /** + * \brief A left angle bracket ('<'). + */ + CXCompletionChunk_LeftAngle, + /** + * \brief A right angle bracket ('>'). + */ + CXCompletionChunk_RightAngle, + /** + * \brief A comma separator (','). + */ + CXCompletionChunk_Comma +}; + +/** + * \brief Callback function that receives a single code-completion result. + * + * This callback will be invoked by \c clang_codeComplete() for each + * code-completion result. + * + * \param completion_result a pointer to the current code-completion result, + * providing one possible completion. The pointer itself is only valid + * during the execution of the completion callback. + * + * \param client_data the client data provided to \c clang_codeComplete(). + */ +typedef void (*CXCompletionIterator)(CXCompletionResult *completion_result, + CXClientData client_data); + +/** + * \brief Determine the kind of a particular chunk within a completion string. + * + * \param completion_string the completion string to query. + * + * \param chunk_number the 0-based index of the chunk in the completion string. + * + * \returns the kind of the chunk at the index \c chunk_number. + */ +CINDEX_LINKAGE enum CXCompletionChunkKind +clang_getCompletionChunkKind(CXCompletionString completion_string, + unsigned chunk_number); + +/** + * \brief Retrieve the text associated with a particular chunk within a + * completion string. + * + * \param completion_string the completion string to query. + * + * \param chunk_number the 0-based index of the chunk in the completion string. + * + * \returns the text associated with the chunk at index \c chunk_number. + */ +CINDEX_LINKAGE const char * +clang_getCompletionChunkText(CXCompletionString completion_string, + unsigned chunk_number); + +/** + * \brief Retrieve the completion string associated with a particular chunk + * within a completion string. + * + * \param completion_string the completion string to query. + * + * \param chunk_number the 0-based index of the chunk in the completion string. + * + * \returns the completion string associated with the chunk at index + * \c chunk_number, or NULL if that chunk is not represented by a completion + * string. + */ +CINDEX_LINKAGE CXCompletionString +clang_getCompletionChunkCompletionString(CXCompletionString completion_string, + unsigned chunk_number); + +/** + * \brief Retrieve the number of chunks in the given code-completion string. + */ +CINDEX_LINKAGE unsigned +clang_getNumCompletionChunks(CXCompletionString completion_string); + +/** + * \brief Perform code completion at a given location in a source file. + * + * This function performs code completion at a particular file, line, and + * column within source code, providing results that suggest potential + * code snippets based on the context of the completion. The basic model + * for code completion is that Clang will parse a complete source file, + * performing syntax checking up to the location where code-completion has + * been requested. At that point, a special code-completion token is passed + * to the parser, which recognizes this token and determines, based on the + * current location in the C/Objective-C/C++ grammar and the state of + * semantic analysis, what completions to provide. These completions are + * enumerated through a callback interface to the client. + * + * Code completion itself is meant to be triggered by the client when the + * user types punctuation characters or whitespace, at which point the + * code-completion location will coincide with the cursor. For example, if \c p + * is a pointer, code-completion might be triggered after the "-" and then + * after the ">" in \c p->. When the code-completion location is afer the ">", + * the completion results will provide, e.g., the members of the struct that + * "p" points to. The client is responsible for placing the cursor at the + * beginning of the token currently being typed, then filtering the results + * based on the contents of the token. For example, when code-completing for + * the expression \c p->get, the client should provide the location just after + * the ">" (e.g., pointing at the "g") to this code-completion hook. Then, the + * client can filter the results based on the current token text ("get"), only + * showing those results that start with "get". The intent of this interface + * is to separate the relatively high-latency acquisition of code-competion + * results from the filtering of results on a per-character basis, which must + * have a lower latency. + * + * \param CIdx the \c CXIndex instance that will be used to perform code + * completion. + * + * \param source_filename the name of the source file that should be parsed + * to perform code-completion. This source file must be the same as or + * include the filename described by \p complete_filename, or no code-completion + * results will be produced. NOTE: One can also specify NULL for this argument if + * the source file is included in command_line_args. + * + * \param num_command_line_args the number of command-line arguments stored in + * \p command_line_args. + * + * \param command_line_args the command-line arguments to pass to the Clang + * compiler to build the given source file. This should include all of the + * necessary include paths, language-dialect switches, precompiled header + * includes, etc., but should not include any information specific to + * code completion. + * + * \param complete_filename the name of the source file where code completion + * should be performed. In many cases, this name will be the same as the + * source filename. However, the completion filename may also be a file + * included by the source file, which is required when producing + * code-completion results for a header. + * + * \param complete_line the line at which code-completion should occur. + * + * \param complete_column the column at which code-completion should occur. + * Note that the column should point just after the syntactic construct that + * initiated code completion, and not in the middle of a lexical token. + * + * \param completion_iterator a callback function that will receive + * code-completion results. + * + * \param client_data client-specific data that will be passed back via the + * code-completion callback function. + */ +CINDEX_LINKAGE void clang_codeComplete(CXIndex CIdx, + const char *source_filename, + int num_command_line_args, + const char **command_line_args, + const char *complete_filename, + unsigned complete_line, + unsigned complete_column, + CXCompletionIterator completion_iterator, + CXClientData client_data); + + #ifdef __cplusplus } #endif Modified: vendor/clang/dist/include/clang/AST/ASTContext.h ============================================================================== --- vendor/clang/dist/include/clang/AST/ASTContext.h Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/include/clang/AST/ASTContext.h Wed Nov 18 14:59:57 2009 (r199482) @@ -37,6 +37,7 @@ namespace llvm { namespace clang { class FileManager; class ASTRecordLayout; + class BlockExpr; class Expr; class ExternalASTSource; class IdentifierTable; @@ -55,7 +56,6 @@ namespace clang { class TranslationUnitDecl; class TypeDecl; class TypedefDecl; - class UnresolvedUsingDecl; class UsingDecl; namespace Builtin { class Context; } @@ -204,7 +204,7 @@ class ASTContext { /// /// This mapping will contain an entry that maps from the UsingDecl in /// B<int> to the UnresolvedUsingDecl in B<T>. - llvm::DenseMap<UsingDecl *, UnresolvedUsingDecl *> + llvm::DenseMap<UsingDecl *, NamedDecl *> InstantiatedFromUnresolvedUsingDecl; llvm::DenseMap<FieldDecl *, FieldDecl *> InstantiatedFromUnnamedFieldDecl; @@ -232,7 +232,7 @@ class ASTContext { llvm::DenseMap<const Decl *, std::string> DeclComments; public: - TargetInfo &Target; + const TargetInfo &Target; IdentifierTable &Idents; SelectorTable &Selectors; Builtin::Context &BuiltinInfo; @@ -284,12 +284,11 @@ public: /// \brief If this using decl is instantiated from an unresolved using decl, /// return it. - UnresolvedUsingDecl *getInstantiatedFromUnresolvedUsingDecl(UsingDecl *UUD); + NamedDecl *getInstantiatedFromUnresolvedUsingDecl(UsingDecl *UUD); /// \brief Note that the using decl \p Inst is an instantiation of /// the unresolved using decl \p Tmpl of a class template. - void setInstantiatedFromUnresolvedUsingDecl(UsingDecl *Inst, - UnresolvedUsingDecl *Tmpl); + void setInstantiatedFromUnresolvedUsingDecl(UsingDecl *Inst, NamedDecl *Tmpl); FieldDecl *getInstantiatedFromUnnamedFieldDecl(FieldDecl *Field); @@ -319,7 +318,7 @@ public: CanQualType UndeducedAutoTy; CanQualType ObjCBuiltinIdTy, ObjCBuiltinClassTy; - ASTContext(const LangOptions& LOpts, SourceManager &SM, TargetInfo &t, + ASTContext(const LangOptions& LOpts, SourceManager &SM, const TargetInfo &t, IdentifierTable &idents, SelectorTable &sels, Builtin::Context &builtins, bool FreeMemory = true, unsigned size_reserve=0); @@ -672,6 +671,10 @@ public: /// declaration. void getObjCEncodingForMethodDecl(const ObjCMethodDecl *Decl, std::string &S); + /// getObjCEncodingForBlockDecl - Return the encoded type for this block + /// declaration. + void getObjCEncodingForBlock(const BlockExpr *Expr, std::string& S); + /// getObjCEncodingForPropertyDecl - Return the encoded type for /// this method declaration. If non-NULL, Container must be either /// an ObjCCategoryImplDecl or ObjCImplementationDecl; it should @@ -872,9 +875,9 @@ public: /// \brief Determine whether the given types are equivalent after /// cvr-qualifiers have been removed. bool hasSameUnqualifiedType(QualType T1, QualType T2) { - T1 = getCanonicalType(T1); - T2 = getCanonicalType(T2); - return T1.getUnqualifiedType() == T2.getUnqualifiedType(); + CanQualType CT1 = getCanonicalType(T1); + CanQualType CT2 = getCanonicalType(T2); + return CT1.getUnqualifiedType() == CT2.getUnqualifiedType(); } /// \brief Retrieves the "canonical" declaration of @@ -925,6 +928,10 @@ public: /// types, values, and templates. TemplateName getCanonicalTemplateName(TemplateName Name); + /// \brief Determine whether the given template names refer to the same + /// template. + bool hasSameTemplateName(TemplateName X, TemplateName Y); + /// \brief Retrieve the "canonical" template argument. /// /// The canonical template argument is the simplest template argument Modified: vendor/clang/dist/include/clang/AST/Attr.h ============================================================================== --- vendor/clang/dist/include/clang/AST/Attr.h Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/include/clang/AST/Attr.h Wed Nov 18 14:59:57 2009 (r199482) @@ -50,6 +50,7 @@ public: Annotate, AsmLabel, // Represent GCC asm label extension. Blocks, + CDecl, Cleanup, Const, Constructor, @@ -442,6 +443,7 @@ DEF_SIMPLE_ATTR(DLLImport); DEF_SIMPLE_ATTR(DLLExport); DEF_SIMPLE_ATTR(FastCall); DEF_SIMPLE_ATTR(StdCall); +DEF_SIMPLE_ATTR(CDecl); DEF_SIMPLE_ATTR(TransparentUnion); DEF_SIMPLE_ATTR(ObjCNSObject); DEF_SIMPLE_ATTR(ObjCException); Modified: vendor/clang/dist/include/clang/AST/CanonicalType.h ============================================================================== --- vendor/clang/dist/include/clang/AST/CanonicalType.h Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/include/clang/AST/CanonicalType.h Wed Nov 18 14:59:57 2009 (r199482) @@ -71,6 +71,9 @@ public: /// \brief Implicit conversion to a qualified type. operator QualType() const { return Stored; } + /// \brief Implicit conversion to bool. + operator bool() const { return !isNull(); } + bool isNull() const { return Stored.isNull(); } @@ -99,22 +102,22 @@ public: CanProxy<T> operator->() const; /// \brief Retrieve all qualifiers. - Qualifiers getQualifiers() const { return Stored.getQualifiers(); } + Qualifiers getQualifiers() const { return Stored.getLocalQualifiers(); } /// \brief Retrieve the const/volatile/restrict qualifiers. - unsigned getCVRQualifiers() const { return Stored.getCVRQualifiers(); } + unsigned getCVRQualifiers() const { return Stored.getLocalCVRQualifiers(); } /// \brief Determines whether this type has any qualifiers - bool hasQualifiers() const { return Stored.hasQualifiers(); } + bool hasQualifiers() const { return Stored.hasLocalQualifiers(); } bool isConstQualified() const { - return Stored.isConstQualified(); + return Stored.isLocalConstQualified(); } bool isVolatileQualified() const { - return Stored.isVolatileQualified(); + return Stored.isLocalVolatileQualified(); } bool isRestrictQualified() const { - return Stored.isRestrictQualified(); + return Stored.isLocalRestrictQualified(); } /// \brief Retrieve the unqualified form of this type. @@ -635,7 +638,7 @@ struct CanProxyAdaptor<ObjCObjectPointer //----------------------------------------------------------------------------// template<typename T> inline CanQual<T> CanQual<T>::getUnqualifiedType() const { - return CanQual<T>::CreateUnsafe(Stored.getUnqualifiedType()); + return CanQual<T>::CreateUnsafe(Stored.getLocalUnqualifiedType()); } template<typename T> Modified: vendor/clang/dist/include/clang/AST/Decl.h ============================================================================== --- vendor/clang/dist/include/clang/AST/Decl.h Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/include/clang/AST/Decl.h Wed Nov 18 14:59:57 2009 (r199482) @@ -232,6 +232,7 @@ public: void setOriginalNamespace(NamespaceDecl *ND) { OrigNamespace = ND; } virtual NamespaceDecl *getCanonicalDecl() { return OrigNamespace; } + const NamespaceDecl *getCanonicalDecl() const { return OrigNamespace; } virtual SourceRange getSourceRange() const { return SourceRange(getLocation(), RBracLoc); @@ -552,6 +553,9 @@ public: } virtual VarDecl *getCanonicalDecl(); + const VarDecl *getCanonicalDecl() const { + return const_cast<VarDecl*>(this)->getCanonicalDecl(); + } /// hasLocalStorage - Returns true if a variable with function scope /// is a non-static local variable. @@ -1424,6 +1428,9 @@ public: virtual SourceRange getSourceRange() const; virtual TagDecl* getCanonicalDecl(); + const TagDecl* getCanonicalDecl() const { + return const_cast<TagDecl*>(this)->getCanonicalDecl(); + } /// isDefinition - Return true if this decl has its body specified. bool isDefinition() const { @@ -1515,6 +1522,9 @@ public: EnumDecl *getCanonicalDecl() { return cast<EnumDecl>(TagDecl::getCanonicalDecl()); } + const EnumDecl *getCanonicalDecl() const { + return cast<EnumDecl>(TagDecl::getCanonicalDecl()); + } static EnumDecl *Create(ASTContext &C, DeclContext *DC, SourceLocation L, IdentifierInfo *Id, Modified: vendor/clang/dist/include/clang/AST/DeclBase.h ============================================================================== --- vendor/clang/dist/include/clang/AST/DeclBase.h Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/include/clang/AST/DeclBase.h Wed Nov 18 14:59:57 2009 (r199482) @@ -79,9 +79,11 @@ public: /// namespaces, labels, tags, members and ordinary /// identifiers. These are meant as bitmasks, so that searches in /// C++ can look into the "tag" namespace during ordinary lookup. We - /// use additional namespaces for Objective-C entities. We also - /// put C++ friend declarations (of previously-undeclared entities) in - /// shadow namespaces. + /// use additional namespaces for Objective-C entities. We also put + /// C++ friend declarations (of previously-undeclared entities) in + /// shadow namespaces, and 'using' declarations (as opposed to their + /// implicit shadow declarations) can be found in their own + /// namespace. enum IdentifierNamespace { IDNS_Label = 0x1, IDNS_Tag = 0x2, @@ -91,7 +93,8 @@ public: IDNS_ObjCImplementation = 0x20, IDNS_ObjCCategoryImpl = 0x40, IDNS_OrdinaryFriend = 0x80, - IDNS_TagFriend = 0x100 + IDNS_TagFriend = 0x100, + IDNS_Using = 0x200 }; /// ObjCDeclQualifier - Qualifier used on types in method declarations Modified: vendor/clang/dist/include/clang/AST/DeclCXX.h ============================================================================== --- vendor/clang/dist/include/clang/AST/DeclCXX.h Wed Nov 18 14:58:34 2009 (r199481) +++ vendor/clang/dist/include/clang/AST/DeclCXX.h Wed Nov 18 14:59:57 2009 (r199482) @@ -432,6 +432,9 @@ public: virtual CXXRecordDecl *getCanonicalDecl() { return cast<CXXRecordDecl>(RecordDecl::getCanonicalDecl()); } + virtual const CXXRecordDecl *getCanonicalDecl() const { + return cast<CXXRecordDecl>(RecordDecl::getCanonicalDecl()); + } static CXXRecordDecl *Create(ASTContext &C, TagKind TK, DeclContext *DC, SourceLocation L, IdentifierInfo *Id, @@ -768,7 +771,7 @@ public: /// \param Base the base class we are searching for. /// /// \returns true if this class is derived from Base, false otherwise. - bool isDerivedFrom(CXXRecordDecl *Base); + bool isDerivedFrom(CXXRecordDecl *Base) const; /// \brief Determine whether this class is derived from the type \p Base. /// @@ -786,7 +789,7 @@ public: /// /// \todo add a separate paramaeter to configure IsDerivedFrom, rather than /// tangling input and output in \p Paths - bool isDerivedFrom(CXXRecordDecl *Base, CXXBasePaths &Paths); + bool isDerivedFrom(CXXRecordDecl *Base, CXXBasePaths &Paths) const; /// \brief Function type used by lookupInBases() to determine whether a /// specific base class subobject matches the lookup criteria. @@ -801,7 +804,7 @@ public: /// lookupInBases(). /// /// \returns true if this base matched the search criteria, false otherwise. - typedef bool BaseMatchesCallback(CXXBaseSpecifier *Specifier, + typedef bool BaseMatchesCallback(const CXXBaseSpecifier *Specifier, CXXBasePath &Path, void *UserData); @@ -826,7 +829,7 @@ public: /// \returns true if there exists any path from this class to a base class /// subobject that matches the search criteria. bool lookupInBases(BaseMatchesCallback *BaseMatches, void *UserData, - CXXBasePaths &Paths); + CXXBasePaths &Paths) const; /// \brief Base-class lookup callback that determines whether the given /// base class specifier refers to a specific class declaration. @@ -835,8 +838,8 @@ public: /// a given derived class has is a base class subobject of a particular type. /// The user data pointer should refer to the canonical CXXRecordDecl of the /// base class that we are searching for. - static bool FindBaseClass(CXXBaseSpecifier *Specifier, CXXBasePath &Path, - void *BaseRecord); + static bool FindBaseClass(const CXXBaseSpecifier *Specifier, + CXXBasePath &Path, void *BaseRecord); /// \brief Base-class lookup callback that determines whether there exists /// a tag with the given name. @@ -844,8 +847,8 @@ public: /// This callback can be used with \c lookupInBases() to find tag members /// of the given name within a C++ class hierarchy. The user data pointer /// is an opaque \c DeclarationName pointer. - static bool FindTagMember(CXXBaseSpecifier *Specifier, CXXBasePath &Path, - void *Name); + static bool FindTagMember(const CXXBaseSpecifier *Specifier, + CXXBasePath &Path, void *Name); /// \brief Base-class lookup callback that determines whether there exists /// a member with the given name. @@ -853,8 +856,8 @@ public: /// This callback can be used with \c lookupInBases() to find members /// of the given name within a C++ class hierarchy. The user data pointer /// is an opaque \c DeclarationName pointer. - static bool FindOrdinaryMember(CXXBaseSpecifier *Specifier, CXXBasePath &Path, - void *Name); + static bool FindOrdinaryMember(const CXXBaseSpecifier *Specifier, + CXXBasePath &Path, void *Name); /// \brief Base-class lookup callback that determines whether there exists /// a member with the given name that can be used in a nested-name-specifier. @@ -862,7 +865,7 @@ public: /// This callback can be used with \c lookupInBases() to find membes of /// the given name within a C++ class hierarchy that can occur within /// nested-name-specifiers. - static bool FindNestedNameSpecifierMember(CXXBaseSpecifier *Specifier, + static bool FindNestedNameSpecifierMember(const CXXBaseSpecifier *Specifier, CXXBasePath &Path, void *UserData); @@ -1244,6 +1247,11 @@ public: /// used for user-defined conversions. bool isConvertingConstructor(bool AllowExplicit) const; + /// \brief Determine whether this is a member template specialization that + /// looks like a copy constructor. Such constructors are never used to copy + /// an object. + bool isCopyConstructorLikeSpecialization() const; + // Implement isa/cast/dyncast/etc. static bool classof(const Decl *D) { return D->getKind() == CXXConstructor; @@ -1261,13 +1269,6 @@ public: /// }; /// @endcode class CXXDestructorDecl : public CXXMethodDecl { -public: - enum KindOfObjectToDestroy { - VBASE = 0x1, - DRCTNONVBASE = 0x2, - ANYBASE = 0x3 - }; -private: /// ImplicitlyDefined - Whether this destructor was implicitly /// defined by the compiler. When false, the destructor was defined /// by the user. In C++03, this flag will have the same value as @@ -1276,24 +1277,15 @@ private: /// @c !Implicit && ImplicitlyDefined. bool ImplicitlyDefined : 1; - /// Support for base and member destruction. - /// BaseOrMemberDestructions - The arguments used to destruct the base - /// or member. Each uintptr_t value represents one of base classes (either - /// virtual or direct non-virtual base), or non-static data member - /// to be destroyed. The low two bits encode the kind of object - /// being destroyed. - uintptr_t *BaseOrMemberDestructions; - unsigned NumBaseOrMemberDestructions; - + FunctionDecl *OperatorDelete; + CXXDestructorDecl(CXXRecordDecl *RD, SourceLocation L, DeclarationName N, QualType T, bool isInline, bool isImplicitlyDeclared) : CXXMethodDecl(CXXDestructor, RD, L, N, T, /*DInfo=*/0, false, isInline), - ImplicitlyDefined(false), - BaseOrMemberDestructions(0), NumBaseOrMemberDestructions(0) { + ImplicitlyDefined(false), OperatorDelete(0) { setImplicit(isImplicitlyDeclared); } - virtual void Destroy(ASTContext& C); public: static CXXDestructorDecl *Create(ASTContext &C, CXXRecordDecl *RD, @@ -1319,95 +1311,8 @@ public: ImplicitlyDefined = ID; } - /// destr_iterator - Iterates through the member/base destruction list. - - /// destr_const_iterator - Iterates through the member/base destruction list. - typedef uintptr_t const destr_const_iterator; - - /// destr_begin() - Retrieve an iterator to the first destructed member/base. - uintptr_t* destr_begin() { - return BaseOrMemberDestructions; - } - /// destr_begin() - Retrieve an iterator to the first destructed member/base. - uintptr_t* destr_begin() const { - return BaseOrMemberDestructions; - } - - /// destr_end() - Retrieve an iterator past the last destructed member/base. - uintptr_t* destr_end() { - return BaseOrMemberDestructions + NumBaseOrMemberDestructions; - } - /// destr_end() - Retrieve an iterator past the last destructed member/base. - uintptr_t* destr_end() const { - return BaseOrMemberDestructions + NumBaseOrMemberDestructions; - } - - /// getNumBaseOrMemberDestructions - Number of base and non-static members - /// to destroy. - unsigned getNumBaseOrMemberDestructions() const { - return NumBaseOrMemberDestructions; - } - - /// setNumBaseOrMemberDestructions - Set number of base and non-static members - /// to destroy. - void setNumBaseOrMemberDestructions(unsigned numBaseOrMemberDestructions) { - NumBaseOrMemberDestructions = numBaseOrMemberDestructions; - } - - /// getBaseOrMemberToDestroy - get the generic 'member' representing either - /// the field or a base class. - uintptr_t* getBaseOrMemberToDestroy() const { - return BaseOrMemberDestructions; - } - - /// setBaseOrMemberToDestroy - set the generic 'member' representing either - /// the field or a base class. - void setBaseOrMemberDestructions(uintptr_t* baseOrMemberDestructions) { - BaseOrMemberDestructions = baseOrMemberDestructions; - } - - /// isVbaseToDestroy - returns true, if object is virtual base. - bool isVbaseToDestroy(uintptr_t Vbase) const { - return (Vbase & VBASE) != 0; - } - /// isDirectNonVBaseToDestroy - returns true, if object is direct non-virtual - /// base. - bool isDirectNonVBaseToDestroy(uintptr_t DrctNonVbase) const { - return (DrctNonVbase & DRCTNONVBASE) != 0; - } - /// isAnyBaseToDestroy - returns true, if object is any base (virtual or - /// direct non-virtual) - bool isAnyBaseToDestroy(uintptr_t AnyBase) const { - return (AnyBase & ANYBASE) != 0; - } - /// isMemberToDestroy - returns true if object is a non-static data member. - bool isMemberToDestroy(uintptr_t Member) const { - return (Member & ANYBASE) == 0; - } - /// getAnyBaseClassToDestroy - Get the type for the given base class object. - Type *getAnyBaseClassToDestroy(uintptr_t Base) const { - if (isAnyBaseToDestroy(Base)) - return reinterpret_cast<Type*>(Base & ~0x03); - return 0; - } - /// getMemberToDestroy - Get the member for the given object. - FieldDecl *getMemberToDestroy(uintptr_t Member) const { - if (isMemberToDestroy(Member)) - return reinterpret_cast<FieldDecl *>(Member); - return 0; - } - /// getVbaseClassToDestroy - Get the virtual base. - Type *getVbaseClassToDestroy(uintptr_t Vbase) const { - if (isVbaseToDestroy(Vbase)) - return reinterpret_cast<Type*>(Vbase & ~0x01); - return 0; - } - /// getDirectNonVBaseClassToDestroy - Get the virtual base. - Type *getDirectNonVBaseClassToDestroy(uintptr_t Base) const { - if (isDirectNonVBaseToDestroy(Base)) - return reinterpret_cast<Type*>(Base & ~0x02); - return 0; - } + void setOperatorDelete(FunctionDecl *OD) { OperatorDelete = OD; } + const FunctionDecl *getOperatorDelete() const { return OperatorDelete; } // Implement isa/cast/dyncast/etc. static bool classof(const Decl *D) { @@ -1739,6 +1644,56 @@ public: static bool classof(const NamespaceAliasDecl *D) { return true; } }; *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200911181459.nAIExwjI074923>