From 36981b17ed939300f6f8fc2355a255f711fcef71 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Thu, 20 Oct 2011 21:14:49 +0000 Subject: Vendor import of clang release_30 branch r142614: http://llvm.org/svn/llvm-project/cfe/branches/release_30@142614 --- .gitignore | 25 + CMakeLists.txt | 18 +- INPUTS/cfg-nested-var-scopes.cpp | 59 + Makefile | 14 +- NOTES.txt | 18 + TODO.txt | 75 - bindings/python/clang/cindex.py | 484 ++- bindings/python/tests/cindex/test_cursor.py | 6 +- bindings/python/tests/cindex/test_diagnostics.py | 2 +- bindings/python/tests/cindex/test_location.py | 50 + bindings/python/tests/cindex/test_type.py | 76 + clang.xcodeproj/project.pbxproj | 2103 --------- docs/AutomaticReferenceCounting.html | 83 + docs/InternalsManual.html | 223 + docs/LanguageExtensions.html | 392 +- docs/UsersManual.html | 37 +- docs/doxygen.cfg.in | 2 +- docs/doxygen.css | 30 + docs/tools/clang.pod | 8 +- examples/PrintFunctionNames/PrintFunctionNames.cpp | 4 +- examples/analyzer-plugin/CMakeLists.txt | 14 + examples/analyzer-plugin/MainCallChecker.cpp | 52 + examples/analyzer-plugin/Makefile | 20 + examples/clang-interpreter/main.cpp | 8 +- include/clang-c/Index.h | 651 ++- include/clang/ARCMigrate/ARCMT.h | 46 +- include/clang/ARCMigrate/ARCMTActions.h | 6 +- include/clang/ARCMigrate/FileRemapper.h | 23 +- include/clang/AST/APValue.h | 10 +- include/clang/AST/ASTContext.h | 311 +- include/clang/AST/ASTDiagnostic.h | 16 +- include/clang/AST/ASTImporter.h | 4 +- include/clang/AST/ASTMutationListener.h | 6 + include/clang/AST/Attr.h | 46 +- include/clang/AST/BaseSubobject.h | 87 + include/clang/AST/CXXInheritance.h | 14 +- include/clang/AST/CharUnits.h | 6 + include/clang/AST/Decl.h | 183 +- include/clang/AST/DeclBase.h | 110 +- include/clang/AST/DeclCXX.h | 113 +- include/clang/AST/DeclContextInternals.h | 2 +- include/clang/AST/DeclObjC.h | 305 +- include/clang/AST/DeclTemplate.h | 67 +- include/clang/AST/DeclVisitor.h | 2 +- include/clang/AST/DeclarationName.h | 10 +- include/clang/AST/Expr.h | 336 +- include/clang/AST/ExprCXX.h | 79 +- include/clang/AST/ExprObjC.h | 136 +- include/clang/AST/ExternalASTSource.h | 199 +- include/clang/AST/Makefile | 16 +- include/clang/AST/Mangle.h | 58 +- include/clang/AST/NestedNameSpecifier.h | 8 +- include/clang/AST/OperationKinds.h | 52 +- include/clang/AST/ParentMap.h | 1 + include/clang/AST/PrettyPrinter.h | 16 +- include/clang/AST/RecordLayout.h | 10 +- include/clang/AST/RecursiveASTVisitor.h | 25 +- include/clang/AST/SelectorLocationsKind.h | 83 + include/clang/AST/Stmt.h | 62 +- include/clang/AST/StmtVisitor.h | 6 +- include/clang/AST/TemplateBase.h | 51 +- include/clang/AST/TemplateName.h | 7 +- include/clang/AST/Type.h | 104 +- include/clang/AST/TypeLoc.h | 68 + include/clang/AST/TypeNodes.def | 3 +- include/clang/AST/TypeVisitor.h | 2 +- include/clang/AST/UnresolvedSet.h | 4 +- include/clang/AST/VTTBuilder.h | 176 + include/clang/AST/VTableBuilder.h | 357 ++ include/clang/Analysis/Analyses/FormatString.h | 8 +- include/clang/Analysis/Analyses/LiveVariables.h | 175 +- include/clang/Analysis/Analyses/ReachableCode.h | 2 +- include/clang/Analysis/Analyses/ThreadSafety.h | 153 + .../clang/Analysis/Analyses/UninitializedValues.h | 8 +- include/clang/Analysis/AnalysisContext.h | 97 +- include/clang/Analysis/AnalysisDiagnostic.h | 2 +- include/clang/Analysis/CFG.h | 154 +- .../Analysis/DomainSpecific/CocoaConventions.h | 11 +- .../clang/Analysis/FlowSensitive/DataflowSolver.h | 62 +- .../clang/Analysis/FlowSensitive/DataflowValues.h | 12 +- include/clang/Analysis/ProgramPoint.h | 163 +- .../clang/Analysis/Support/BlkExprDeclBitVector.h | 24 +- .../Analysis/Visitors/CFGRecStmtDeclVisitor.h | 18 +- .../clang/Analysis/Visitors/CFGRecStmtVisitor.h | 6 +- include/clang/Analysis/Visitors/CFGStmtVisitor.h | 22 +- include/clang/Basic/Attr.td | 149 +- include/clang/Basic/Builtins.def | 62 +- include/clang/Basic/Builtins.h | 17 +- include/clang/Basic/DeclNodes.td | 1 + include/clang/Basic/DelayedCleanupPool.h | 5 +- include/clang/Basic/Diagnostic.h | 296 +- include/clang/Basic/Diagnostic.td | 10 +- include/clang/Basic/DiagnosticASTKinds.td | 4 + include/clang/Basic/DiagnosticCommonKinds.td | 15 +- include/clang/Basic/DiagnosticDriverKinds.td | 6 + include/clang/Basic/DiagnosticFrontendKinds.td | 157 +- include/clang/Basic/DiagnosticGroups.td | 54 +- include/clang/Basic/DiagnosticIDs.h | 137 +- include/clang/Basic/DiagnosticLexKinds.td | 69 +- include/clang/Basic/DiagnosticParseKinds.td | 90 +- include/clang/Basic/DiagnosticSemaKinds.td | 783 +++- include/clang/Basic/FileManager.h | 33 +- include/clang/Basic/IdentifierTable.h | 46 +- include/clang/Basic/LLVM.h | 53 + include/clang/Basic/LangOptions.def | 158 + include/clang/Basic/LangOptions.h | 277 +- include/clang/Basic/MacroBuilder.h | 10 +- include/clang/Basic/Makefile | 20 +- include/clang/Basic/OnDiskHashTable.h | 18 +- include/clang/Basic/OpenCLExtensions.def | 4 + include/clang/Basic/PartialDiagnostic.h | 31 +- include/clang/Basic/PrettyStackTrace.h | 2 +- include/clang/Basic/SourceLocation.h | 70 +- include/clang/Basic/SourceManager.h | 780 ++-- include/clang/Basic/SourceManagerInternals.h | 14 +- include/clang/Basic/Specifiers.h | 3 + include/clang/Basic/StmtNodes.td | 3 + include/clang/Basic/TargetInfo.h | 74 +- include/clang/Basic/TokenKinds.def | 28 +- include/clang/Basic/VersionTuple.h | 7 +- include/clang/CMakeLists.txt | 1 + include/clang/CodeGen/BackendUtil.h | 9 +- include/clang/CodeGen/CodeGenAction.h | 2 +- include/clang/CodeGen/ModuleBuilder.h | 4 +- include/clang/Config/config.h.cmake | 3 + include/clang/Driver/Action.h | 22 +- include/clang/Driver/Arg.h | 6 +- include/clang/Driver/ArgList.h | 62 +- include/clang/Driver/CC1Options.td | 71 +- include/clang/Driver/Compilation.h | 16 +- include/clang/Driver/Driver.h | 67 +- include/clang/Driver/DriverDiagnostic.h | 2 +- include/clang/Driver/Job.h | 13 +- include/clang/Driver/Makefile | 12 +- include/clang/Driver/OptTable.h | 8 +- include/clang/Driver/Option.h | 13 +- include/clang/Driver/Options.td | 27 +- include/clang/Driver/Tool.h | 6 +- include/clang/Driver/ToolChain.h | 27 +- include/clang/Driver/Types.def | 3 + include/clang/Driver/Util.h | 8 +- include/clang/Frontend/ASTConsumers.h | 9 +- include/clang/Frontend/ASTUnit.h | 292 +- include/clang/Frontend/Analyses.def | 20 +- include/clang/Frontend/AnalyzerOptions.h | 15 +- include/clang/Frontend/ChainedDiagnosticClient.h | 61 - include/clang/Frontend/ChainedDiagnosticConsumer.h | 67 + include/clang/Frontend/CodeGenOptions.h | 3 + include/clang/Frontend/CommandLineSourceLoc.h | 7 +- include/clang/Frontend/CompilerInstance.h | 116 +- include/clang/Frontend/CompilerInvocation.h | 12 +- include/clang/Frontend/DiagnosticOptions.h | 4 +- include/clang/Frontend/FrontendAction.h | 31 +- include/clang/Frontend/FrontendActions.h | 38 +- include/clang/Frontend/FrontendDiagnostic.h | 2 +- include/clang/Frontend/FrontendOptions.h | 15 +- include/clang/Frontend/HeaderSearchOptions.h | 40 +- include/clang/Frontend/LangStandard.h | 3 +- include/clang/Frontend/LangStandards.def | 18 +- include/clang/Frontend/LogDiagnosticPrinter.h | 18 +- include/clang/Frontend/PreprocessorOptions.h | 36 +- include/clang/Frontend/TextDiagnosticBuffer.h | 10 +- include/clang/Frontend/TextDiagnosticPrinter.h | 29 +- include/clang/Frontend/Utils.h | 16 +- include/clang/Frontend/VerifyDiagnosticConsumer.h | 97 + include/clang/Frontend/VerifyDiagnosticsClient.h | 94 - include/clang/Index/ASTLocation.h | 6 +- include/clang/Index/CallGraph.h | 2 +- include/clang/Index/Entity.h | 3 +- include/clang/Index/Handlers.h | 3 +- include/clang/Index/TranslationUnit.h | 4 +- include/clang/Lex/CodeCompletionHandler.h | 4 + include/clang/Lex/DirectoryLookup.h | 47 +- include/clang/Lex/HeaderMap.h | 6 +- include/clang/Lex/HeaderSearch.h | 84 +- include/clang/Lex/LexDiagnostic.h | 2 +- include/clang/Lex/Lexer.h | 53 +- include/clang/Lex/LiteralSupport.h | 43 +- include/clang/Lex/MacroInfo.h | 33 +- include/clang/Lex/Makefile | 4 +- include/clang/Lex/ModuleLoader.h | 55 + include/clang/Lex/PPCallbacks.h | 74 +- include/clang/Lex/PTHManager.h | 6 +- include/clang/Lex/Pragma.h | 9 +- include/clang/Lex/PreprocessingRecord.h | 377 +- include/clang/Lex/Preprocessor.h | 220 +- include/clang/Lex/PreprocessorLexer.h | 18 +- include/clang/Lex/Token.h | 5 +- include/clang/Lex/TokenConcatenation.h | 9 +- include/clang/Lex/TokenLexer.h | 16 +- include/clang/Makefile | 2 +- include/clang/Parse/CMakeLists.txt | 4 + include/clang/Parse/Makefile | 13 + include/clang/Parse/ParseAST.h | 8 +- include/clang/Parse/ParseDiagnostic.h | 2 +- include/clang/Parse/Parser.h | 346 +- include/clang/Rewrite/ASTConsumers.h | 12 +- include/clang/Rewrite/FixItRewriter.h | 22 +- include/clang/Rewrite/FrontendActions.h | 8 +- include/clang/Rewrite/Rewriter.h | 28 +- include/clang/Rewrite/Rewriters.h | 7 +- include/clang/Sema/AnalysisBasedWarnings.h | 1 + include/clang/Sema/AttributeList.h | 67 +- include/clang/Sema/CXXFieldCollector.h | 4 +- include/clang/Sema/CodeCompleteConsumer.h | 80 +- include/clang/Sema/DeclSpec.h | 110 +- include/clang/Sema/DelayedDiagnostic.h | 6 +- include/clang/Sema/Designator.h | 2 +- include/clang/Sema/ExternalSemaSource.h | 120 +- include/clang/Sema/IdentifierResolver.h | 2 +- include/clang/Sema/Initialization.h | 58 +- include/clang/Sema/Lookup.h | 36 +- include/clang/Sema/MultiInitializer.h | 72 + include/clang/Sema/Overload.h | 44 +- include/clang/Sema/Ownership.h | 3 +- include/clang/Sema/ParsedTemplate.h | 2 +- include/clang/Sema/PrettyDeclStackTrace.h | 2 +- include/clang/Sema/Scope.h | 4 +- include/clang/Sema/ScopeInfo.h | 12 +- include/clang/Sema/Sema.h | 844 ++-- include/clang/Sema/SemaDiagnostic.h | 2 +- include/clang/Sema/SemaFixItUtils.h | 91 + include/clang/Sema/Template.h | 19 +- include/clang/Sema/TemplateDeduction.h | 4 +- include/clang/Sema/TypoCorrection.h | 73 +- include/clang/Sema/Weak.h | 46 + include/clang/Serialization/ASTBitCodes.h | 199 +- .../Serialization/ASTDeserializationListener.h | 2 +- include/clang/Serialization/ASTReader.h | 828 ++-- .../clang/Serialization/ASTSerializationListener.h | 44 - include/clang/Serialization/ASTWriter.h | 136 +- .../clang/Serialization/ChainedIncludesSource.h | 3 +- include/clang/Serialization/ContinuousRangeMap.h | 120 + include/clang/Serialization/Makefile | 8 +- include/clang/Serialization/Module.h | 319 ++ include/clang/Serialization/ModuleManager.h | 156 + .../clang/StaticAnalyzer/Checkers/ClangCheckers.h | 22 + .../clang/StaticAnalyzer/Checkers/LocalCheckers.h | 22 +- .../StaticAnalyzer/Core/BugReporter/BugReporter.h | 360 +- .../Core/BugReporter/BugReporterVisitor.h | 183 + .../StaticAnalyzer/Core/BugReporter/BugType.h | 10 +- .../Core/BugReporter/PathDiagnostic.h | 231 +- include/clang/StaticAnalyzer/Core/Checker.h | 81 +- include/clang/StaticAnalyzer/Core/CheckerManager.h | 117 +- include/clang/StaticAnalyzer/Core/CheckerOptInfo.h | 43 + .../clang/StaticAnalyzer/Core/CheckerProvider.h | 58 - .../clang/StaticAnalyzer/Core/CheckerRegistry.h | 132 + .../StaticAnalyzer/Core/PathDiagnosticClients.h | 42 - .../StaticAnalyzer/Core/PathDiagnosticConsumers.h | 42 + .../Core/PathSensitive/AnalysisManager.h | 43 +- .../Core/PathSensitive/BasicValueFactory.h | 22 +- .../Core/PathSensitive/BlockCounter.h | 9 +- .../Core/PathSensitive/CheckerContext.h | 118 +- .../Core/PathSensitive/ConstraintManager.h | 40 +- .../StaticAnalyzer/Core/PathSensitive/CoreEngine.h | 246 +- .../Core/PathSensitive/Environment.h | 8 +- .../Core/PathSensitive/ExplodedGraph.h | 49 +- .../StaticAnalyzer/Core/PathSensitive/ExprEngine.h | 215 +- .../Core/PathSensitive/ExprEngineBuilders.h | 18 +- .../StaticAnalyzer/Core/PathSensitive/GRState.h | 793 ---- .../Core/PathSensitive/GRStateTrait.h | 183 - .../StaticAnalyzer/Core/PathSensitive/MemRegion.h | 164 +- .../Core/PathSensitive/ObjCMessage.h | 184 +- .../Core/PathSensitive/ProgramState.h | 814 ++++ .../Core/PathSensitive/ProgramStateTrait.h | 184 + .../Core/PathSensitive/SValBuilder.h | 37 +- .../StaticAnalyzer/Core/PathSensitive/SVals.h | 50 +- .../StaticAnalyzer/Core/PathSensitive/Store.h | 57 +- .../StaticAnalyzer/Core/PathSensitive/StoreRef.h | 3 +- .../StaticAnalyzer/Core/PathSensitive/SubEngine.h | 36 +- .../Core/PathSensitive/SymbolManager.h | 238 +- .../Core/PathSensitive/TransferFuncs.h | 93 - .../StaticAnalyzer/Core/PathSensitive/WorkList.h | 10 +- .../StaticAnalyzer/Frontend/CheckerRegistration.h | 14 +- .../StaticAnalyzer/Frontend/FrontendActions.h | 4 +- lib/ARCMigrate/ARCMT.cpp | 154 +- lib/ARCMigrate/ARCMTActions.cpp | 18 +- lib/ARCMigrate/CMakeLists.txt | 2 + lib/ARCMigrate/FileRemapper.cpp | 82 +- lib/ARCMigrate/Internals.h | 47 +- lib/ARCMigrate/PlistReporter.cpp | 195 + lib/ARCMigrate/TransAPIUses.cpp | 109 + lib/ARCMigrate/TransARCAssign.cpp | 1 - lib/ARCMigrate/TransAutoreleasePool.cpp | 24 +- lib/ARCMigrate/TransBlockObjCVariable.cpp | 5 +- lib/ARCMigrate/TransEmptyStatementsAndDealloc.cpp | 86 +- lib/ARCMigrate/TransProperties.cpp | 105 +- lib/ARCMigrate/TransRetainReleaseDealloc.cpp | 8 +- lib/ARCMigrate/TransUnbridgedCasts.cpp | 127 +- lib/ARCMigrate/TransUnusedInitDelegate.cpp | 1 - lib/ARCMigrate/TransZeroOutPropsInDealloc.cpp | 1 - lib/ARCMigrate/TransformActions.cpp | 81 +- lib/ARCMigrate/Transforms.cpp | 30 +- lib/ARCMigrate/Transforms.h | 13 +- lib/AST/APValue.cpp | 50 +- lib/AST/ASTContext.cpp | 705 +-- lib/AST/ASTDiagnostic.cpp | 46 +- lib/AST/ASTImporter.cpp | 612 +-- lib/AST/CMakeLists.txt | 5 +- lib/AST/CXXInheritance.cpp | 12 +- lib/AST/Decl.cpp | 172 +- lib/AST/DeclBase.cpp | 141 +- lib/AST/DeclCXX.cpp | 97 +- lib/AST/DeclObjC.cpp | 179 +- lib/AST/DeclPrinter.cpp | 277 +- lib/AST/DeclTemplate.cpp | 52 +- lib/AST/DeclarationName.cpp | 25 +- lib/AST/DumpXML.cpp | 39 +- lib/AST/Expr.cpp | 423 +- lib/AST/ExprCXX.cpp | 38 +- lib/AST/ExprClassification.cpp | 3 +- lib/AST/ExprConstant.cpp | 180 +- lib/AST/ExternalASTSource.cpp | 4 +- lib/AST/InheritViz.cpp | 8 +- lib/AST/ItaniumCXXABI.cpp | 2 +- lib/AST/ItaniumMangle.cpp | 116 +- lib/AST/Mangle.cpp | 16 +- lib/AST/MicrosoftCXXABI.cpp | 4 +- lib/AST/MicrosoftMangle.cpp | 149 +- lib/AST/NestedNameSpecifier.cpp | 4 +- lib/AST/ParentMap.cpp | 8 + lib/AST/RecordLayout.cpp | 12 +- lib/AST/RecordLayoutBuilder.cpp | 419 +- lib/AST/SelectorLocationsKind.cpp | 128 + lib/AST/Stmt.cpp | 30 +- lib/AST/StmtDumper.cpp | 36 +- lib/AST/StmtPrinter.cpp | 102 +- lib/AST/StmtProfile.cpp | 9 +- lib/AST/TemplateBase.cpp | 72 +- lib/AST/TemplateName.cpp | 6 +- lib/AST/Type.cpp | 116 +- lib/AST/TypeLoc.cpp | 3 +- lib/AST/TypePrinter.cpp | 15 +- lib/AST/VTTBuilder.cpp | 212 + lib/AST/VTableBuilder.cpp | 2404 +++++++++++ lib/Analysis/AnalysisContext.cpp | 93 +- lib/Analysis/CFG.cpp | 488 ++- lib/Analysis/CFGReachabilityAnalysis.cpp | 2 +- lib/Analysis/CFGStmtMap.cpp | 2 +- lib/Analysis/CMakeLists.txt | 2 + lib/Analysis/CocoaConventions.cpp | 33 +- lib/Analysis/FormatString.cpp | 8 +- lib/Analysis/LiveVariables.cpp | 874 ++-- lib/Analysis/PrintfFormatString.cpp | 11 +- lib/Analysis/ProgramPoint.cpp | 51 + lib/Analysis/PseudoConstantAnalysis.cpp | 2 +- lib/Analysis/ReachableCode.cpp | 377 +- lib/Analysis/ThreadSafety.cpp | 799 ++++ lib/Analysis/UninitializedValues.cpp | 326 +- lib/Basic/Builtins.cpp | 10 +- lib/Basic/CMakeLists.txt | 1 + lib/Basic/Diagnostic.cpp | 239 +- lib/Basic/DiagnosticIDs.cpp | 397 +- lib/Basic/FileManager.cpp | 50 +- lib/Basic/IdentifierTable.cpp | 47 +- lib/Basic/LangOptions.cpp | 30 + lib/Basic/SourceLocation.cpp | 22 +- lib/Basic/SourceManager.cpp | 797 ++-- lib/Basic/TargetInfo.cpp | 29 +- lib/Basic/Targets.cpp | 1102 ++++- lib/Basic/Version.cpp | 9 +- lib/Basic/VersionTuple.cpp | 2 +- lib/CodeGen/BackendUtil.cpp | 52 +- lib/CodeGen/CGBlocks.cpp | 162 +- lib/CodeGen/CGBlocks.h | 2 +- lib/CodeGen/CGBuiltin.cpp | 495 ++- lib/CodeGen/CGCUDANV.cpp | 126 + lib/CodeGen/CGCUDARuntime.cpp | 55 + lib/CodeGen/CGCUDARuntime.h | 54 + lib/CodeGen/CGCXX.cpp | 42 +- lib/CodeGen/CGCXXABI.cpp | 10 +- lib/CodeGen/CGCXXABI.h | 8 +- lib/CodeGen/CGCall.cpp | 285 +- lib/CodeGen/CGCall.h | 10 +- lib/CodeGen/CGClass.cpp | 92 +- lib/CodeGen/CGCleanup.cpp | 383 +- lib/CodeGen/CGCleanup.h | 323 +- lib/CodeGen/CGDebugInfo.cpp | 499 ++- lib/CodeGen/CGDebugInfo.h | 71 +- lib/CodeGen/CGDecl.cpp | 184 +- lib/CodeGen/CGDeclCXX.cpp | 25 +- lib/CodeGen/CGException.cpp | 692 +-- lib/CodeGen/CGException.h | 12 +- lib/CodeGen/CGExpr.cpp | 502 ++- lib/CodeGen/CGExprAgg.cpp | 156 +- lib/CodeGen/CGExprCXX.cpp | 284 +- lib/CodeGen/CGExprComplex.cpp | 83 +- lib/CodeGen/CGExprConstant.cpp | 111 +- lib/CodeGen/CGExprScalar.cpp | 204 +- lib/CodeGen/CGObjC.cpp | 1362 +++--- lib/CodeGen/CGObjCGNU.cpp | 378 +- lib/CodeGen/CGObjCMac.cpp | 383 +- lib/CodeGen/CGObjCRuntime.cpp | 45 +- lib/CodeGen/CGObjCRuntime.h | 3 +- lib/CodeGen/CGOpenCLRuntime.cpp | 28 + lib/CodeGen/CGOpenCLRuntime.h | 46 + lib/CodeGen/CGRTTI.cpp | 50 +- lib/CodeGen/CGRecordLayout.h | 11 +- lib/CodeGen/CGRecordLayoutBuilder.cpp | 32 +- lib/CodeGen/CGStmt.cpp | 129 +- lib/CodeGen/CGVTT.cpp | 421 +- lib/CodeGen/CGVTables.cpp | 2688 +----------- lib/CodeGen/CGVTables.h | 168 +- lib/CodeGen/CGValue.h | 109 +- lib/CodeGen/CMakeLists.txt | 3 + lib/CodeGen/CodeGenAction.cpp | 29 +- lib/CodeGen/CodeGenFunction.cpp | 96 +- lib/CodeGen/CodeGenFunction.h | 197 +- lib/CodeGen/CodeGenModule.cpp | 712 +-- lib/CodeGen/CodeGenModule.h | 156 +- lib/CodeGen/CodeGenTBAA.cpp | 4 +- lib/CodeGen/CodeGenTBAA.h | 4 +- lib/CodeGen/CodeGenTypes.cpp | 44 +- lib/CodeGen/CodeGenTypes.h | 10 +- lib/CodeGen/ItaniumCXXABI.cpp | 128 +- lib/CodeGen/MicrosoftCXXABI.cpp | 4 +- lib/CodeGen/ModuleBuilder.cpp | 12 +- lib/CodeGen/TargetInfo.cpp | 420 +- lib/CodeGen/TargetInfo.h | 42 +- lib/Driver/Action.cpp | 9 +- lib/Driver/ArgList.cpp | 53 +- lib/Driver/Compilation.cpp | 45 +- lib/Driver/Driver.cpp | 367 +- lib/Driver/HostInfo.cpp | 2 +- lib/Driver/Job.cpp | 6 + lib/Driver/OptTable.cpp | 13 +- lib/Driver/Option.cpp | 12 +- lib/Driver/Phases.cpp | 4 +- lib/Driver/ToolChain.cpp | 34 +- lib/Driver/ToolChains.cpp | 792 ++-- lib/Driver/ToolChains.h | 27 +- lib/Driver/Tools.cpp | 880 ++-- lib/Driver/Tools.h | 16 + lib/Driver/Types.cpp | 10 +- lib/Frontend/ASTConsumers.cpp | 77 +- lib/Frontend/ASTMerge.cpp | 12 +- lib/Frontend/ASTUnit.cpp | 674 +-- lib/Frontend/CMakeLists.txt | 3 +- lib/Frontend/CacheTokens.cpp | 20 +- lib/Frontend/CompilerInstance.cpp | 674 ++- lib/Frontend/CompilerInvocation.cpp | 388 +- lib/Frontend/CreateInvocationFromCommandLine.cpp | 10 +- lib/Frontend/DependencyFile.cpp | 44 +- lib/Frontend/FrontendAction.cpp | 30 +- lib/Frontend/FrontendActions.cpp | 90 +- lib/Frontend/FrontendOptions.cpp | 2 +- lib/Frontend/HeaderIncludeGen.cpp | 14 +- lib/Frontend/InitHeaderSearch.cpp | 204 +- lib/Frontend/InitPreprocessor.cpp | 175 +- lib/Frontend/LangStandards.cpp | 2 +- lib/Frontend/LogDiagnosticPrinter.cpp | 67 +- lib/Frontend/MultiplexConsumer.cpp | 4 +- lib/Frontend/PrintPreprocessedOutput.cpp | 44 +- lib/Frontend/TextDiagnosticBuffer.cpp | 33 +- lib/Frontend/TextDiagnosticPrinter.cpp | 1368 +++--- lib/Frontend/VerifyDiagnosticConsumer.cpp | 541 +++ lib/Frontend/VerifyDiagnosticsClient.cpp | 513 --- lib/Frontend/Warnings.cpp | 47 +- lib/FrontendTool/CMakeLists.txt | 4 + lib/FrontendTool/ExecuteCompilerInvocation.cpp | 39 +- lib/Headers/CMakeLists.txt | 1 + lib/Headers/Makefile | 4 +- lib/Headers/avxintrin.h | 2 +- lib/Headers/emmintrin.h | 70 +- lib/Headers/float.h | 2 +- lib/Headers/mm_malloc.h | 4 +- lib/Headers/pmmintrin.h | 6 +- lib/Headers/stdalign.h | 30 + lib/Headers/tgmath.h | 7 +- lib/Headers/xmmintrin.h | 41 +- lib/Index/ASTLocation.cpp | 11 +- lib/Index/CallGraph.cpp | 2 +- lib/Index/Entity.cpp | 8 +- lib/Index/EntityImpl.h | 2 +- lib/Index/GlobalSelector.cpp | 4 +- lib/Lex/HeaderMap.cpp | 4 +- lib/Lex/HeaderSearch.cpp | 208 +- lib/Lex/Lexer.cpp | 650 ++- lib/Lex/LiteralSupport.cpp | 394 +- lib/Lex/MacroArgs.cpp | 48 +- lib/Lex/MacroArgs.h | 13 +- lib/Lex/MacroInfo.cpp | 6 +- lib/Lex/PPCaching.cpp | 2 + lib/Lex/PPDirectives.cpp | 140 +- lib/Lex/PPExpressions.cpp | 56 +- lib/Lex/PPLexerChange.cpp | 64 +- lib/Lex/PPMacroExpansion.cpp | 182 +- lib/Lex/PTHLexer.cpp | 19 +- lib/Lex/Pragma.cpp | 95 +- lib/Lex/PreprocessingRecord.cpp | 283 +- lib/Lex/Preprocessor.cpp | 268 +- lib/Lex/PreprocessorLexer.cpp | 8 + lib/Lex/ScratchBuffer.cpp | 2 +- lib/Lex/TokenConcatenation.cpp | 72 +- lib/Lex/TokenLexer.cpp | 219 +- lib/Parse/CMakeLists.txt | 2 +- lib/Parse/ParseAST.cpp | 6 +- lib/Parse/ParseCXXInlineMethods.cpp | 140 +- lib/Parse/ParseDecl.cpp | 810 +++- lib/Parse/ParseDeclCXX.cpp | 418 +- lib/Parse/ParseExpr.cpp | 184 +- lib/Parse/ParseExprCXX.cpp | 577 ++- lib/Parse/ParseInit.cpp | 25 +- lib/Parse/ParseObjc.cpp | 631 +-- lib/Parse/ParsePragma.cpp | 19 +- lib/Parse/ParseStmt.cpp | 395 +- lib/Parse/ParseTemplate.cpp | 115 +- lib/Parse/ParseTentative.cpp | 26 +- lib/Parse/Parser.cpp | 187 +- lib/Parse/RAIIObjectsForParser.h | 4 +- lib/Rewrite/DeltaTree.cpp | 4 +- lib/Rewrite/FixItRewriter.cpp | 20 +- lib/Rewrite/FrontendActions.cpp | 16 +- lib/Rewrite/HTMLPrint.cpp | 6 +- lib/Rewrite/HTMLRewrite.cpp | 40 +- lib/Rewrite/RewriteMacros.cpp | 6 +- lib/Rewrite/RewriteObjC.cpp | 571 ++- lib/Rewrite/RewriteRope.cpp | 4 +- lib/Rewrite/RewriteTest.cpp | 2 +- lib/Rewrite/Rewriter.cpp | 25 +- lib/Sema/AnalysisBasedWarnings.cpp | 476 ++- lib/Sema/AttributeList.cpp | 26 +- lib/Sema/CMakeLists.txt | 4 +- lib/Sema/CodeCompleteConsumer.cpp | 52 +- lib/Sema/DeclSpec.cpp | 92 +- lib/Sema/DelayedDiagnostic.cpp | 2 +- lib/Sema/IdentifierResolver.cpp | 2 +- lib/Sema/JumpDiagnostics.cpp | 79 +- lib/Sema/MultiInitializer.cpp | 92 + lib/Sema/Sema.cpp | 388 +- lib/Sema/SemaAccess.cpp | 57 +- lib/Sema/SemaAttr.cpp | 16 +- lib/Sema/SemaCXXCast.cpp | 1802 -------- lib/Sema/SemaCXXScopeSpec.cpp | 30 +- lib/Sema/SemaCast.cpp | 2069 +++++++++ lib/Sema/SemaChecking.cpp | 808 +++- lib/Sema/SemaCodeComplete.cpp | 473 +- lib/Sema/SemaDecl.cpp | 1787 +++++--- lib/Sema/SemaDeclAttr.cpp | 1126 ++++- lib/Sema/SemaDeclCXX.cpp | 2783 +++++++++--- lib/Sema/SemaDeclObjC.cpp | 909 ++-- lib/Sema/SemaExceptionSpec.cpp | 14 +- lib/Sema/SemaExpr.cpp | 4510 +++++++++++--------- lib/Sema/SemaExprCXX.cpp | 322 +- lib/Sema/SemaExprMember.cpp | 99 +- lib/Sema/SemaExprObjC.cpp | 539 ++- lib/Sema/SemaFixItUtils.cpp | 160 + lib/Sema/SemaInit.cpp | 1022 +++-- lib/Sema/SemaLookup.cpp | 285 +- lib/Sema/SemaObjCProperty.cpp | 422 +- lib/Sema/SemaOverload.cpp | 622 ++- lib/Sema/SemaStmt.cpp | 417 +- lib/Sema/SemaTemplate.cpp | 206 +- lib/Sema/SemaTemplateDeduction.cpp | 233 +- lib/Sema/SemaTemplateInstantiate.cpp | 88 +- lib/Sema/SemaTemplateInstantiateDecl.cpp | 636 +-- lib/Sema/SemaTemplateVariadic.cpp | 55 +- lib/Sema/SemaType.cpp | 332 +- lib/Sema/TargetAttributesSema.cpp | 20 +- lib/Sema/TreeTransform.h | 249 +- lib/Serialization/ASTCommon.cpp | 1 + lib/Serialization/ASTCommon.h | 8 +- lib/Serialization/ASTReader.cpp | 4300 ++++++++++--------- lib/Serialization/ASTReaderDecl.cpp | 798 ++-- lib/Serialization/ASTReaderInternals.h | 243 ++ lib/Serialization/ASTReaderStmt.cpp | 352 +- lib/Serialization/ASTWriter.cpp | 1259 +++--- lib/Serialization/ASTWriterDecl.cpp | 121 +- lib/Serialization/ASTWriterStmt.cpp | 50 +- lib/Serialization/CMakeLists.txt | 4 + lib/Serialization/ChainedIncludesSource.cpp | 52 +- lib/Serialization/GeneratePCH.cpp | 34 +- lib/Serialization/Module.cpp | 109 + lib/Serialization/ModuleManager.cpp | 253 ++ .../Checkers/AdjustedReturnValueChecker.cpp | 2 +- .../Checkers/AnalyzerStatsChecker.cpp | 7 +- lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp | 17 +- .../Checkers/ArrayBoundCheckerV2.cpp | 32 +- lib/StaticAnalyzer/Checkers/AttrNonNullChecker.cpp | 17 +- .../Checkers/BasicObjCFoundationChecks.cpp | 45 +- .../Checkers/BuiltinFunctionChecker.cpp | 4 +- lib/StaticAnalyzer/Checkers/CMakeLists.txt | 5 +- lib/StaticAnalyzer/Checkers/CStringChecker.cpp | 303 +- .../Checkers/CallAndMessageChecker.cpp | 52 +- lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp | 4 +- .../Checkers/CastToStructChecker.cpp | 2 +- lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp | 68 +- .../Checkers/CheckObjCInstMethSignature.cpp | 28 +- .../Checkers/CheckSecuritySyntaxOnly.cpp | 103 +- lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp | 12 +- lib/StaticAnalyzer/Checkers/Checkers.td | 40 +- lib/StaticAnalyzer/Checkers/ChrootChecker.cpp | 20 +- lib/StaticAnalyzer/Checkers/ClangCheckers.cpp | 32 + .../Checkers/ClangSACheckerProvider.cpp | 289 -- .../Checkers/ClangSACheckerProvider.h | 29 - lib/StaticAnalyzer/Checkers/ClangSACheckers.h | 1 + lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp | 120 +- lib/StaticAnalyzer/Checkers/DebugCheckers.cpp | 2 +- lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp | 38 +- lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp | 10 +- .../Checkers/FixedAddressChecker.cpp | 4 +- .../Checkers/IdempotentOperationChecker.cpp | 21 +- lib/StaticAnalyzer/Checkers/IteratorsChecker.cpp | 74 +- .../Checkers/LLVMConventionsChecker.cpp | 25 +- .../Checkers/MacOSKeychainAPIChecker.cpp | 632 +++ lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp | 8 +- lib/StaticAnalyzer/Checkers/Makefile | 4 +- lib/StaticAnalyzer/Checkers/MallocChecker.cpp | 140 +- .../Checkers/MallocOverflowSecurityChecker.cpp | 268 ++ .../Checkers/NSAutoreleasePoolChecker.cpp | 17 +- lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp | 30 +- .../Checkers/NoReturnFunctionChecker.cpp | 73 +- lib/StaticAnalyzer/Checkers/OSAtomicChecker.cpp | 101 +- lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp | 17 +- .../Checkers/ObjCSelfInitChecker.cpp | 35 +- .../Checkers/ObjCUnusedIVarsChecker.cpp | 18 +- .../Checkers/PointerArithChecker.cpp | 4 +- lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp | 4 +- lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp | 185 +- lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp | 3588 ++++++++++++++++ .../Checkers/ReturnPointerRangeChecker.cpp | 10 +- lib/StaticAnalyzer/Checkers/ReturnUndefChecker.cpp | 6 +- .../Checkers/StackAddrEscapeChecker.cpp | 33 +- lib/StaticAnalyzer/Checkers/StreamChecker.cpp | 58 +- lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp | 33 +- .../Checkers/UndefCapturedBlockVarChecker.cpp | 9 +- lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp | 8 +- .../Checkers/UndefinedArraySubscriptChecker.cpp | 6 +- .../Checkers/UndefinedAssignmentChecker.cpp | 13 +- lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp | 29 +- .../Checkers/UnreachableCodeChecker.cpp | 29 +- lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp | 20 +- lib/StaticAnalyzer/Core/AggExprVisitor.cpp | 2 +- lib/StaticAnalyzer/Core/AnalysisManager.cpp | 52 + lib/StaticAnalyzer/Core/BasicConstraintManager.cpp | 179 +- lib/StaticAnalyzer/Core/BasicStore.cpp | 605 --- lib/StaticAnalyzer/Core/BasicValueFactory.cpp | 14 +- lib/StaticAnalyzer/Core/BlockCounter.cpp | 4 +- lib/StaticAnalyzer/Core/BugReporter.cpp | 580 +-- lib/StaticAnalyzer/Core/BugReporterVisitors.cpp | 746 ++-- lib/StaticAnalyzer/Core/CFRefCount.cpp | 3689 ---------------- lib/StaticAnalyzer/Core/CMakeLists.txt | 16 +- lib/StaticAnalyzer/Core/CXXExprEngine.cpp | 370 -- lib/StaticAnalyzer/Core/Checker.cpp | 22 + lib/StaticAnalyzer/Core/CheckerContext.cpp | 4 +- lib/StaticAnalyzer/Core/CheckerManager.cpp | 136 +- lib/StaticAnalyzer/Core/CheckerRegistry.cpp | 149 + lib/StaticAnalyzer/Core/CoreEngine.cpp | 239 +- lib/StaticAnalyzer/Core/Environment.cpp | 76 +- lib/StaticAnalyzer/Core/ExplodedGraph.cpp | 31 +- lib/StaticAnalyzer/Core/ExprEngine.cpp | 1961 ++------- lib/StaticAnalyzer/Core/ExprEngineC.cpp | 752 ++++ lib/StaticAnalyzer/Core/ExprEngineCXX.cpp | 339 ++ .../Core/ExprEngineCallAndReturn.cpp | 253 ++ lib/StaticAnalyzer/Core/ExprEngineObjC.cpp | 279 ++ lib/StaticAnalyzer/Core/FlatStore.cpp | 217 - lib/StaticAnalyzer/Core/GRState.cpp | 620 --- lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp | 62 +- lib/StaticAnalyzer/Core/MemRegion.cpp | 77 +- lib/StaticAnalyzer/Core/ObjCMessage.cpp | 52 +- lib/StaticAnalyzer/Core/PathDiagnostic.cpp | 225 +- lib/StaticAnalyzer/Core/PlistDiagnostics.cpp | 79 +- lib/StaticAnalyzer/Core/ProgramState.cpp | 625 +++ lib/StaticAnalyzer/Core/RangeConstraintManager.cpp | 73 +- lib/StaticAnalyzer/Core/RegionStore.cpp | 162 +- lib/StaticAnalyzer/Core/SValBuilder.cpp | 21 +- lib/StaticAnalyzer/Core/SVals.cpp | 18 +- .../Core/SimpleConstraintManager.cpp | 20 +- lib/StaticAnalyzer/Core/SimpleConstraintManager.h | 26 +- lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp | 43 +- lib/StaticAnalyzer/Core/Store.cpp | 28 +- lib/StaticAnalyzer/Core/SymbolManager.cpp | 153 +- lib/StaticAnalyzer/Core/TextPathDiagnostics.cpp | 20 +- lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp | 245 +- lib/StaticAnalyzer/Frontend/AnalysisConsumer.h | 6 +- .../Frontend/CheckerRegistration.cpp | 108 +- lib/StaticAnalyzer/Frontend/FrontendActions.cpp | 5 +- lib/StaticAnalyzer/README.txt | 12 +- runtime/CMakeLists.txt | 1 + runtime/Makefile | 2 +- runtime/compiler-rt/Makefile | 2 +- runtime/libcxx/Makefile | 35 + test/ARCMT/Common.h | 10 + test/ARCMT/api.m | 9 + test/ARCMT/api.m.result | 9 + test/ARCMT/assign-prop-no-arc-runtime.m | 4 +- test/ARCMT/assign-prop-no-arc-runtime.m.result | 4 +- test/ARCMT/assign-prop-with-arc-runtime.m | 17 +- test/ARCMT/assign-prop-with-arc-runtime.m.result | 17 +- test/ARCMT/atautorelease-2.m | 4 +- test/ARCMT/atautorelease-2.m.result | 4 +- test/ARCMT/atautorelease-3.m | 4 +- test/ARCMT/atautorelease-3.m.result | 4 +- test/ARCMT/atautorelease-check.m | 2 +- test/ARCMT/atautorelease.m | 18 +- test/ARCMT/atautorelease.m.result | 18 +- test/ARCMT/autoreleases.m | 4 +- test/ARCMT/autoreleases.m.result | 4 +- test/ARCMT/check-api.m | 43 + test/ARCMT/checking.m | 2 +- test/ARCMT/cxx-checking.mm | 2 +- test/ARCMT/cxx-rewrite.mm | 6 +- test/ARCMT/cxx-rewrite.mm.result | 4 +- test/ARCMT/dealloc.m | 4 +- test/ARCMT/dealloc.m.result | 4 +- test/ARCMT/driver-migrate.m | 9 + test/ARCMT/init.m | 4 +- test/ARCMT/init.m.result | 4 +- test/ARCMT/migrate-emit-errors.m | 12 + test/ARCMT/migrate-plist-output.m | 50 + test/ARCMT/migrate-space-in-path.m | 5 + test/ARCMT/migrate.m | 5 +- test/ARCMT/nonobjc-to-objc-cast-2.m | 25 +- test/ARCMT/nonobjc-to-objc-cast.m | 27 +- test/ARCMT/nonobjc-to-objc-cast.m.result | 27 +- test/ARCMT/releases-driver.m | 4 +- test/ARCMT/releases-driver.m.result | 4 +- test/ARCMT/releases.m | 16 +- test/ARCMT/releases.m.result | 15 +- test/ARCMT/remove-dealloc-method.m | 4 +- test/ARCMT/remove-dealloc-method.m.result | 4 +- test/ARCMT/remove-dealloc-zerouts.m | 4 +- test/ARCMT/remove-dealloc-zerouts.m.result | 4 +- test/ARCMT/remove-statements.m | 4 +- test/ARCMT/remove-statements.m.result | 4 +- test/ARCMT/retains.m | 4 +- test/ARCMT/retains.m.result | 4 +- test/ARCMT/rewrite-block-var.m | 4 +- test/ARCMT/rewrite-block-var.m.result | 4 +- test/ARCMT/safe-arc-assign.m | 4 +- test/ARCMT/safe-arc-assign.m.result | 4 +- test/ARCMT/with space/test.h | 15 + test/ARCMT/with space/test.h.result | 13 + test/ARCMT/with space/test1.m.in | 6 + test/ARCMT/with space/test1.m.in.result | 5 + test/ARCMT/with space/test2.m.in | 6 + test/ARCMT/with space/test2.m.in.result | 5 + test/ARCMT/with-arc-mode-check.m | 2 +- test/ARCMT/with-arc-mode-migrate.m | 5 +- test/ARCMT/with-arc-mode-migrate.m.result | 5 +- test/ARCMT/with-arc-mode-modify.m | 4 +- test/ARCMT/with-arc-mode-modify.m.result | 4 +- test/ASTMerge/interface.m | 8 +- test/Analysis/CFDateGC.m | 7 +- test/Analysis/CFNumber.c | 6 +- test/Analysis/CFRetainRelease_NSAssertionHandler.m | 14 +- test/Analysis/CGColorSpace.c | 6 +- test/Analysis/CheckNSError.m | 2 - test/Analysis/MissingDealloc.m | 2 +- test/Analysis/NSPanel.m | 6 +- test/Analysis/NSString.m | 15 +- test/Analysis/NSWindow.m | 6 +- test/Analysis/NoReturn.m | 6 +- test/Analysis/ObjCProperties.m | 6 +- test/Analysis/ObjCRetSigs.m | 2 +- test/Analysis/PR2599.m | 5 +- test/Analysis/PR2978.m | 2 +- test/Analysis/PR3991.m | 6 +- test/Analysis/PR9741.cpp | 2 +- test/Analysis/additive-folding-range-constraints.c | 2 +- test/Analysis/additive-folding.c | 4 +- test/Analysis/analyzeOneFunction.m | 56 + test/Analysis/array-struct-region.c | 4 +- test/Analysis/array-struct.c | 6 +- test/Analysis/auto-obj-dtors-cfg-output.cpp | 1365 +++--- test/Analysis/bstring.c | 8 +- test/Analysis/casts.c | 4 +- test/Analysis/casts.m | 23 +- test/Analysis/cfref_PR2519.c | 6 +- test/Analysis/cfref_rdar6080742.c | 6 +- test/Analysis/chroot.c | 2 +- test/Analysis/complex.c | 2 - test/Analysis/concrete-address.c | 3 +- test/Analysis/constant-folding.c | 2 +- test/Analysis/dead-stores.c | 2 - test/Analysis/dead-stores.cpp | 2 - test/Analysis/dead-stores.m | 2 +- test/Analysis/default-diagnostic-visitors.c | 13 + test/Analysis/delegates.m | 3 +- test/Analysis/div-zero.cpp | 13 + test/Analysis/elementtype.c | 2 +- test/Analysis/exercise-ps.c | 3 +- test/Analysis/fields.c | 3 +- test/Analysis/flat-store.c | 11 - test/Analysis/free.c | 2 +- test/Analysis/func.c | 3 +- test/Analysis/idempotent-operations.m | 2 +- test/Analysis/initializers-cfg-output.cpp | 105 +- test/Analysis/iterators.cpp | 2 +- test/Analysis/keychainAPI-diagnostic-visitor.m | 35 + test/Analysis/keychainAPI.m | 323 ++ test/Analysis/malloc-overflow.c | 113 + test/Analysis/malloc-overflow.cpp | 11 + test/Analysis/malloc.c | 4 +- test/Analysis/misc-ps-64.m | 6 +- test/Analysis/misc-ps-basic-store.m | 35 - test/Analysis/misc-ps-cxx0x.cpp | 61 +- test/Analysis/misc-ps-eager-assume.m | 2 +- test/Analysis/misc-ps-flat-store.c | 10 - test/Analysis/misc-ps-ranges.m | 3 +- test/Analysis/misc-ps-region-store-i386.m | 2 +- test/Analysis/misc-ps-region-store-x86_64.m | 2 +- test/Analysis/misc-ps-region-store.cpp | 57 +- test/Analysis/misc-ps-region-store.m | 4 +- test/Analysis/misc-ps-region-store.mm | 4 +- test/Analysis/misc-ps.m | 13 +- ...iver-undefined-larger-than-voidptr-ret-region.m | 2 +- ...il-receiver-undefined-larger-than-voidptr-ret.m | 9 +- test/Analysis/no-exit-cfg.c | 3 +- test/Analysis/no-outofbounds.c | 3 +- test/Analysis/null-deref-ps-region.c | 2 +- test/Analysis/null-deref-ps.c | 6 +- test/Analysis/nullptr.cpp | 2 +- test/Analysis/objc-arc.m | 8 +- test/Analysis/operator-calls.cpp | 2 +- test/Analysis/out-of-bounds.c | 5 +- test/Analysis/outofbound-notwork.c | 32 + test/Analysis/outofbound.c | 11 +- test/Analysis/override-werror.c | 3 +- test/Analysis/plist-output-alternate.m | 316 +- test/Analysis/plist-output.m | 2 +- test/Analysis/pr4209.m | 3 +- test/Analysis/pr_2542_rdar_6793404.m | 3 +- test/Analysis/pr_4164.c | 3 +- test/Analysis/properties.m | 2 +- test/Analysis/pthreadlock.c | 137 + test/Analysis/ptr-arith.c | 4 +- test/Analysis/rdar-6442306-1.m | 3 +- test/Analysis/rdar-6540084.m | 2 +- test/Analysis/rdar-6541136-region.c | 2 +- test/Analysis/rdar-6541136.c | 20 - test/Analysis/rdar-6562655.m | 3 +- test/Analysis/rdar-6582778-basic-store.c | 22 - ...dar-6600344-nil-receiver-undefined-struct-ret.m | 3 +- test/Analysis/rdar-7168531.m | 3 +- test/Analysis/refcnt_naming.m | 3 +- test/Analysis/reference.cpp | 3 +- test/Analysis/region-1.m | 3 +- test/Analysis/retain-release-basic-store.m | 104 - test/Analysis/retain-release-gc-only.m | 5 +- test/Analysis/retain-release-path-notes-gc.m | 3 +- test/Analysis/retain-release-path-notes.m | 3 +- test/Analysis/retain-release-region-store.m | 2 +- test/Analysis/retain-release.m | 76 +- test/Analysis/retain-release.mm | 12 +- test/Analysis/security-syntax-checks-no-emit.c | 2 +- test/Analysis/security-syntax-checks.m | 19 +- test/Analysis/self-init.m | 2 +- test/Analysis/sizeofpointer.c | 2 +- test/Analysis/stack-addr-ps.c | 3 +- test/Analysis/stack-addr-ps.cpp | 30 +- test/Analysis/stack-block-returned.cpp | 9 + test/Analysis/stream.c | 2 +- test/Analysis/string-fail.c | 4 +- test/Analysis/string.c | 8 +- test/Analysis/temp-obj-dtors-cfg-output.cpp | 1141 ++--- test/Analysis/undef-buffers.c | 13 +- test/Analysis/uninit-msg-expr.m | 1 - test/Analysis/uninit-ps-rdar6145427.m | 1 - test/Analysis/uninit-vals-ps.c | 1 - test/Analysis/uninit-vals.m | 1 - test/Analysis/unix-fns.c | 1 - test/Analysis/unreachable-code-path.c | 2 +- test/Analysis/unused-ivars.m | 4 +- test/Analysis/variadic-method-types.m | 1 - test/CMakeLists.txt | 14 +- .../basic.lookup/basic.lookup.classref/p1.cpp | 18 + .../basic.lookup/basic.lookup.classref/p3.cpp | 2 +- .../basic/basic.lookup/basic.lookup.qual/p6-0x.cpp | 2 +- .../basic/basic.scope/basic.scope.local/p4-0x.cpp | 2 +- .../CXX/basic/basic.scope/basic.scope.pdecl/p3.cpp | 2 +- test/CXX/basic/basic.types/p10.cpp | 127 + test/CXX/class.access/class.friend/p1.cpp | 13 + test/CXX/class.access/class.friend/p2-cxx03.cpp | 2 +- test/CXX/class.access/class.friend/p3-cxx0x.cpp | 2 +- test/CXX/class.access/class.friend/p6.cpp | 20 + test/CXX/class.access/class.protected/p1.cpp | 2 +- test/CXX/class.access/p6.cpp | 22 + test/CXX/class.derived/class.virtual/p3-0x.cpp | 2 +- test/CXX/class/class.bit/p2.cpp | 22 + test/CXX/class/class.friend/p2.cpp | 2 +- test/CXX/class/class.friend/p6.cpp | 2 +- test/CXX/class/class.mem/p5-0x.cpp | 2 +- test/CXX/class/class.mem/p8-0x.cpp | 2 +- test/CXX/class/class.nest/p1-cxx0x.cpp | 2 +- .../class/class.static/class.static.data/p3.cpp | 26 + test/CXX/class/p1-0x.cpp | 2 +- test/CXX/class/p2-0x.cpp | 2 +- test/CXX/class/p6-0x.cpp | 2 +- .../dcl.dcl/basic.namespace/namespace.def/p7.cpp | 2 +- .../dcl.dcl/basic.namespace/namespace.def/p8.cpp | 2 +- .../basic.namespace/namespace.udecl/p3-cxx0x.cpp | 2 +- test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p1.cpp | 92 +- test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p2.cpp | 26 + test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3.cpp | 125 + test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p4.cpp | 226 + test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p6.cpp | 74 + test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p8.cpp | 28 + test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p9.cpp | 37 + test/CXX/dcl.dcl/dcl.spec/dcl.fct.spec/p6.cpp | 4 +- .../dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p2.cpp | 2 +- .../dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p3.cpp | 17 +- .../dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p4.cpp | 3 +- .../dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p5.cpp | 2 +- .../dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p6.cpp | 20 +- .../dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p7.cpp | 15 +- .../dcl.spec/dcl.type/dcl.type.elab/p2-0x.cpp | 2 +- .../dcl.spec/dcl.type/dcl.type.simple/p4-cxx0x.cpp | 2 +- test/CXX/dcl.dcl/dcl.spec/dcl.type/p3-0x.cpp | 10 +- test/CXX/dcl.dcl/dcl.spec/dcl.typedef/p2-0x.cpp | 2 +- test/CXX/dcl.decl/dcl.init/dcl.init.aggr/p1-0x.cpp | 9 +- test/CXX/dcl.decl/dcl.init/dcl.init.aggr/p4.cpp | 2 +- .../dcl.init/dcl.init.list/p7-0x-fixits.cpp | 33 + test/CXX/dcl.decl/dcl.init/dcl.init.list/p7-0x.cpp | 175 + test/CXX/dcl.decl/dcl.init/dcl.init.ref/p1.cpp | 2 +- test/CXX/dcl.decl/dcl.init/dcl.init.ref/p5-0x.cpp | 40 +- .../dcl.init.ref/p5-cxx0x-no-extra-copy.cpp | 2 +- test/CXX/dcl.decl/dcl.init/dcl.init.string/p1.cpp | 7 + test/CXX/dcl.decl/dcl.init/p14-0x.cpp | 4 +- .../dcl.decl/dcl.meaning/dcl.array/p1-cxx0x.cpp | 2 +- .../dcl.decl/dcl.meaning/dcl.fct.default/p10.cpp | 2 +- .../dcl.decl/dcl.meaning/dcl.fct.default/p4.cpp | 2 +- .../dcl.meaning/dcl.fct/dcl.fct.def.default/p2.cpp | 62 + test/CXX/dcl.decl/dcl.meaning/dcl.fct/p13.cpp | 2 +- test/CXX/dcl.decl/dcl.meaning/dcl.fct/p14.cpp | 2 +- test/CXX/dcl.decl/dcl.meaning/dcl.fct/p2-cxx0x.cpp | 2 +- test/CXX/dcl.decl/dcl.meaning/dcl.fct/p6-0x.cpp | 2 +- test/CXX/dcl.decl/dcl.meaning/dcl.fct/p8-0x.cpp | 2 +- test/CXX/dcl.decl/dcl.meaning/dcl.fct/p9-0x.cpp | 2 +- test/CXX/dcl.decl/dcl.meaning/dcl.ref/p6-0x.cpp | 2 +- test/CXX/dcl.decl/p4-0x.cpp | 2 +- test/CXX/except/except.spec/canonical.cpp | 2 +- test/CXX/except/except.spec/p1.cpp | 14 +- test/CXX/except/except.spec/p11.cpp | 2 +- test/CXX/except/except.spec/p14.cpp | 2 +- test/CXX/except/except.spec/p15.cpp | 2 +- test/CXX/except/except.spec/p2-places.cpp | 2 +- test/CXX/except/except.spec/p3.cpp | 2 +- test/CXX/except/except.spec/p5-pointers.cpp | 2 +- test/CXX/except/except.spec/p5-virtual.cpp | 2 +- test/CXX/except/except.spec/p9-dynamic.cpp | 5 +- test/CXX/except/except.spec/p9-noexcept.cpp | 5 +- test/CXX/except/except.spec/template.cpp | 2 +- test/CXX/expr/expr.cast/p4-0x.cpp | 2 +- test/CXX/expr/expr.const/p2-0x.cpp | 2 +- test/CXX/expr/expr.mptr.oper/p6-0x.cpp | 2 +- test/CXX/expr/expr.post/expr.call/p7-0x.cpp | 15 +- test/CXX/expr/expr.post/expr.const.cast/p1-0x.cpp | 2 +- .../CXX/expr/expr.post/expr.dynamic.cast/p3-0x.cpp | 2 +- .../expr/expr.post/expr.reinterpret.cast/p1-0x.cpp | 2 +- test/CXX/expr/expr.post/expr.static.cast/p3-0x.cpp | 2 +- test/CXX/expr/expr.post/expr.static.cast/p9-0x.cpp | 2 +- test/CXX/expr/expr.prim/p12-0x.cpp | 2 +- test/CXX/expr/expr.prim/p4-0x.cpp | 2 +- test/CXX/expr/expr.unary/expr.new/p2-cxx0x.cpp | 2 +- test/CXX/expr/expr.unary/expr.new/p20-0x.cpp | 2 +- test/CXX/expr/expr.unary/expr.sizeof/p5-0x.cpp | 2 +- .../CXX/expr/expr.unary/expr.unary.noexcept/cg.cpp | 6 +- .../expr/expr.unary/expr.unary.noexcept/sema.cpp | 2 +- test/CXX/expr/expr.unary/expr.unary.op/p6.cpp | 7 +- test/CXX/lex/lex.literal/lex.ccon/p1.cpp | 7 + test/CXX/lex/lex.literal/lex.ext/p1.cpp | 7 + test/CXX/lex/lex.pptoken/p3-0x.cpp | 2 +- test/CXX/over/over.built/p23.cpp | 25 + test/CXX/over/over.built/p25.cpp | 2 +- test/CXX/over/over.load/p2-0x.cpp | 2 +- .../over.best.ics/over.ics.user/p3-0x.cpp | 2 +- .../over.match.best/over.ics.rank/p3-0x.cpp | 2 +- .../CXX/over/over.match/over.match.funcs/p4-0x.cpp | 2 +- .../over.over/p2-resolve-single-template-id.cpp | 30 +- test/CXX/special/class.copy/implicit-move-def.cpp | 116 + test/CXX/special/class.copy/implicit-move.cpp | 164 + test/CXX/special/class.copy/p11.0x.copy.cpp | 90 + test/CXX/special/class.copy/p11.0x.move.cpp | 85 + test/CXX/special/class.copy/p15-0x.cpp | 18 + test/CXX/special/class.copy/p33-0x.cpp | 2 +- test/CXX/special/class.ctor/p4-0x.cpp | 2 +- test/CXX/special/class.ctor/p5-0x.cpp | 6 +- test/CXX/special/class.dtor/p2-0x.cpp | 2 +- test/CXX/special/class.dtor/p3-0x.cpp | 2 +- test/CXX/special/class.inhctor/elsewhere.cpp | 2 +- test/CXX/special/class.inhctor/p3.cpp | 6 +- test/CXX/special/class.inhctor/p7.cpp | 2 +- .../special/class.init/class.base.init/p8-0x.cpp | 40 +- .../special/class.init/class.base.init/p9-0x.cpp | 2 +- test/CXX/special/class.temporary/p1.cpp | 58 + test/CXX/stmt.stmt/stmt.dcl/p3-0x.cpp | 2 +- test/CXX/stmt.stmt/stmt.iter/stmt.ranged/p1.cpp | 7 +- test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp | 2 +- test/CXX/temp/temp.arg/temp.arg.type/p2-cxx0x.cpp | 2 +- test/CXX/temp/temp.decls/p3.cpp | 2 +- test/CXX/temp/temp.decls/temp.alias/p1.cpp | 2 +- test/CXX/temp/temp.decls/temp.alias/p2.cpp | 2 +- test/CXX/temp/temp.decls/temp.alias/p3.cpp | 2 +- test/CXX/temp/temp.decls/temp.class.spec/p8-0x.cpp | 2 +- test/CXX/temp/temp.decls/temp.class.spec/p9-0x.cpp | 2 +- .../temp.decls/temp.fct/temp.func.order/p3-0x.cpp | 2 +- test/CXX/temp/temp.decls/temp.friend/p1.cpp | 24 + test/CXX/temp/temp.decls/temp.mem/p5.cpp | 5 +- .../temp/temp.decls/temp.variadic/deduction.cpp | 2 +- .../temp/temp.decls/temp.variadic/example-bind.cpp | 2 +- .../temp.decls/temp.variadic/example-function.cpp | 2 +- .../temp.decls/temp.variadic/example-tuple.cpp | 2 +- .../temp/temp.decls/temp.variadic/ext-blocks.cpp | 2 +- .../temp.variadic/injected-class-name.cpp | 2 +- .../temp.decls/temp.variadic/metafunctions.cpp | 2 +- .../temp.variadic/multi-level-substitution.cpp | 17 +- test/CXX/temp/temp.decls/temp.variadic/p1.cpp | 2 +- test/CXX/temp/temp.decls/temp.variadic/p2.cpp | 2 +- test/CXX/temp/temp.decls/temp.variadic/p4.cpp | 3 +- test/CXX/temp/temp.decls/temp.variadic/p5.cpp | 2 +- .../temp.variadic/parameter-matching.cpp | 2 +- .../temp.decls/temp.variadic/partial-ordering.cpp | 2 +- .../temp/temp.fct.spec/temp.arg.explicit/p3-0x.cpp | 2 +- .../temp.arg.explicit/p3-nodeduct.cpp | 6 +- .../temp/temp.fct.spec/temp.arg.explicit/p9-0x.cpp | 2 +- .../CXX/temp/temp.fct.spec/temp.deduct/cwg1170.cpp | 2 +- .../temp.deduct/temp.deduct.call/p1-0x.cpp | 2 +- .../temp.deduct/temp.deduct.call/p3-0x.cpp | 2 +- .../temp.deduct/temp.deduct.call/p4.cpp | 12 + .../temp.deduct/temp.deduct.partial/p12.cpp | 2 +- .../temp.deduct/temp.deduct.partial/p9-0x.cpp | 2 +- .../temp.deduct/temp.deduct.type/p10-0x.cpp | 2 +- .../temp.deduct/temp.deduct.type/p2-0x.cpp | 2 +- .../temp.deduct/temp.deduct.type/p21.cpp | 2 +- .../temp.deduct/temp.deduct.type/p22.cpp | 2 +- .../temp.deduct/temp.deduct.type/p5-0x.cpp | 2 +- .../temp.deduct/temp.deduct.type/p8-0x.cpp | 2 +- .../temp.deduct/temp.deduct.type/p9-0x.cpp | 2 +- test/CXX/temp/temp.param/p10-0x.cpp | 2 +- test/CXX/temp/temp.param/p11-0x.cpp | 2 +- test/CXX/temp/temp.param/p15-cxx0x.cpp | 2 +- test/CXX/temp/temp.param/p15.cpp | 2 +- test/CXX/temp/temp.param/p9-0x.cpp | 2 +- test/CXX/temp/temp.param/p9.cpp | 4 +- .../temp/temp.res/temp.dep/temp.dep.type/p1.cpp | 2 +- test/CXX/temp/temp.spec/temp.expl.spec/p2-0x.cpp | 2 +- test/CXX/temp/temp.spec/temp.explicit/p1-0x.cpp | 11 +- test/CXX/temp/temp.spec/temp.explicit/p3-0x.cpp | 2 +- .../temp/temp.spec/temp.explicit/p9-linkage.cpp | 2 +- test/CXX/temp/temp.spec/temp.explicit/p9.cpp | 2 +- test/CXX/temp/temp.type/p1-0x.cpp | 2 +- test/CodeCompletion/truncation.c | 11 +- test/CodeGen/2002-01-23-LoadQISIReloadFailure.c | 11 + test/CodeGen/2002-01-24-ComplexSpaceInType.c | 11 + test/CodeGen/2002-01-24-HandleCallInsnSEGV.c | 9 + test/CodeGen/2002-02-13-ConditionalInCall.c | 11 + test/CodeGen/2002-02-13-ReloadProblem.c | 18 + test/CodeGen/2002-02-13-TypeVarNameCollision.c | 16 + test/CodeGen/2002-02-13-UnnamedLocal.c | 21 + test/CodeGen/2002-02-14-EntryNodePreds.c | 37 + test/CodeGen/2002-02-16-RenamingTest.c | 18 + test/CodeGen/2002-02-17-ArgumentAddress.c | 39 + test/CodeGen/2002-02-18-64bitConstant.c | 10 + test/CodeGen/2002-02-18-StaticData.c | 13 + test/CodeGen/2002-03-11-LargeCharInString.c | 10 + test/CodeGen/2002-03-12-ArrayInitialization.c | 19 + test/CodeGen/2002-03-12-StructInitialize.c | 14 + test/CodeGen/2002-03-12-StructInitializer.c | 18 + test/CodeGen/2002-03-14-BrokenPHINode.c | 19 + test/CodeGen/2002-03-14-BrokenSSA.c | 17 + test/CodeGen/2002-03-14-QuotesInStrConst.c | 10 + test/CodeGen/2002-04-07-SwitchStmt.c | 22 + test/CodeGen/2002-04-08-LocalArray.c | 14 + test/CodeGen/2002-04-09-StructRetVal.c | 12 + test/CodeGen/2002-04-10-StructParameters.c | 25 + test/CodeGen/2002-05-23-StaticValues.c | 15 + test/CodeGen/2002-05-23-TypeNameCollision.c | 19 + test/CodeGen/2002-05-24-Alloca.c | 11 + test/CodeGen/2002-06-25-FWriteInterfaceFailure.c | 9 + test/CodeGen/2002-07-14-MiscListTests.c | 71 + test/CodeGen/2002-07-14-MiscTests.c | 57 + test/CodeGen/2002-07-14-MiscTests2.c | 13 + test/CodeGen/2002-07-14-MiscTests3.c | 182 + test/CodeGen/2002-07-16-HardStringInit.c | 8 + test/CodeGen/2002-07-17-StringConstant.c | 4 + test/CodeGen/2002-07-30-SubregSetAssertion.c | 12 + test/CodeGen/2002-07-30-UnionTest.c | 22 + test/CodeGen/2002-07-30-VarArgsCallFailure.c | 8 + test/CodeGen/2002-07-31-BadAssert.c | 16 + test/CodeGen/2002-07-31-SubregFailure.c | 14 + test/CodeGen/2002-08-02-UnionTest.c | 19 + test/CodeGen/2002-08-19-RecursiveLocals.c | 18 + test/CodeGen/2002-09-08-PointerShifts.c | 6 + test/CodeGen/2002-09-18-UnionProblem.c | 26 + test/CodeGen/2002-09-19-StarInLabel.c | 9 + test/CodeGen/2002-10-12-TooManyArguments.c | 8 + test/CodeGen/2002-12-15-GlobalBoolTest.c | 5 + test/CodeGen/2002-12-15-GlobalConstantTest.c | 8 + test/CodeGen/2002-12-15-GlobalRedefinition.c | 5 + test/CodeGen/2002-12-15-StructParameters.c | 18 + test/CodeGen/2003-01-30-UnionInit.c | 8 + test/CodeGen/2003-03-03-DeferredType.c | 12 + test/CodeGen/2003-06-22-UnionCrash.c | 13 + .../2003-06-23-GCC-fold-infinite-recursion.c | 6 + test/CodeGen/2003-06-26-CFECrash.c | 19 + .../2003-06-29-MultipleFunctionDefinition.c | 8 + test/CodeGen/2003-07-22-ArrayAccessTypeSafety.c | 7 + test/CodeGen/2003-08-06-BuiltinSetjmpLongjmp.c | 14 + test/CodeGen/2003-08-17-DeadCodeShortCircuit.c | 6 + test/CodeGen/2003-08-18-SigSetJmp.c | 10 + test/CodeGen/2003-08-18-StructAsValue.c | 11 + test/CodeGen/2003-08-20-BadBitfieldRef.c | 8 + test/CodeGen/2003-08-20-PrototypeMismatch.c | 15 + test/CodeGen/2003-08-20-vfork-bug.c | 6 + test/CodeGen/2003-08-21-BinOp-Type-Mismatch.c | 10 + test/CodeGen/2003-08-21-StmtExpr.c | 12 + test/CodeGen/2003-08-21-WideString.c | 16 + test/CodeGen/2003-08-23-LocalUnionTest.c | 11 + test/CodeGen/2003-08-29-BitFieldStruct.c | 13 + test/CodeGen/2003-08-29-HugeCharConst.c | 5 + test/CodeGen/2003-08-29-StructLayoutBug.c | 10 + test/CodeGen/2003-08-30-AggregateInitializer.c | 16 + .../2003-08-30-LargeIntegerBitfieldMember.c | 9 + test/CodeGen/2003-09-18-BitfieldTests.c | 30 + test/CodeGen/2003-09-30-StructLayout.c | 18 + test/CodeGen/2003-10-02-UnionLValueError.c | 11 + test/CodeGen/2003-10-06-NegateExprType.c | 8 + test/CodeGen/2003-10-09-UnionInitializerBug.c | 17 + test/CodeGen/2003-10-28-ident.c | 4 + test/CodeGen/2003-10-29-AsmRename.c | 22 + test/CodeGen/2003-11-01-C99-CompoundLiteral.c | 8 + test/CodeGen/2003-11-01-EmptyStructCrash.c | 6 + test/CodeGen/2003-11-01-GlobalUnionInit.c | 7 + test/CodeGen/2003-11-03-AddrArrayElement.c | 11 + test/CodeGen/2003-11-04-EmptyStruct.c | 6 + test/CodeGen/2003-11-04-OutOfMemory.c | 9 + .../2003-11-08-PointerSubNotGetelementptr.c | 10 + test/CodeGen/2003-11-12-VoidString.c | 4 + test/CodeGen/2003-11-13-TypeSafety.c | 5 + test/CodeGen/2003-11-16-StaticArrayInit.c | 8 + test/CodeGen/2003-11-18-CondExprLValue.c | 9 + test/CodeGen/2003-11-19-AddressOfRegister.c | 11 + test/CodeGen/2003-11-19-BitFieldArray.c | 12 + test/CodeGen/2003-11-20-Bitfields.c | 12 + test/CodeGen/2003-11-20-ComplexDivision.c | 7 + test/CodeGen/2003-11-20-UnionBitfield.c | 12 + test/CodeGen/2003-11-26-PointerShift.c | 6 + test/CodeGen/2003-11-27-ConstructorCast.c | 14 + test/CodeGen/2003-11-27-UnionCtorInitialization.c | 16 + test/CodeGen/2003-12-14-ExternInlineSupport.c | 3 + test/CodeGen/2004-01-01-UnknownInitSize.c | 14 + test/CodeGen/2004-01-08-ExternInlineRedefine.c | 14 + test/CodeGen/2004-02-12-LargeAggregateCopy.c | 8 + .../CodeGen/2004-02-13-BuiltinFrameReturnAddress.c | 10 + test/CodeGen/2004-02-13-IllegalVararg.c | 9 + test/CodeGen/2004-02-13-Memset.c | 12 + test/CodeGen/2004-02-14-ZeroInitializer.c | 4 + test/CodeGen/2004-02-20-Builtins.c | 5 + test/CodeGen/2004-03-07-ComplexDivEquals.c | 6 + test/CodeGen/2004-03-07-ExternalConstant.c | 7 + test/CodeGen/2004-03-09-LargeArrayInitializers.c | 32 + test/CodeGen/2004-03-15-SimpleIndirectGoto.c | 23 + test/CodeGen/2004-03-16-AsmRegisterCrash.c | 12 + test/CodeGen/2004-05-07-VarArrays.c | 5 + test/CodeGen/2004-05-21-IncompleteEnum.c | 5 + test/CodeGen/2004-06-08-OpaqueStructArg.c | 7 + test/CodeGen/2004-06-17-UnorderedBuiltins.c | 24 + test/CodeGen/2004-06-17-UnorderedCompares.c | 19 + .../2004-06-18-VariableLengthArrayOfStructures.c | 10 + test/CodeGen/2004-07-06-FunctionCast.c | 10 + test/CodeGen/2004-08-06-LargeStructTest.c | 19 + test/CodeGen/2004-11-25-UnnamedBitfieldPadding.c | 8 + test/CodeGen/2004-11-27-InvalidConstantExpr.c | 10 + test/CodeGen/2004-11-27-StaticFunctionRedeclare.c | 15 + test/CodeGen/2005-01-02-ConstantInits.c | 24 + test/CodeGen/2005-01-02-PointerDifference.c | 4 + test/CodeGen/2005-01-02-VAArgError-ICE.c | 9 + test/CodeGen/2005-02-20-AggregateSAVEEXPR.c | 5 + test/CodeGen/2005-02-27-MarkGlobalConstant.c | 12 + test/CodeGen/2005-03-05-OffsetOfHack.c | 12 + test/CodeGen/2005-03-06-OffsetOfStructCrash.c | 14 + test/CodeGen/2005-03-11-Prefetch.c | 7 + test/CodeGen/2005-04-09-ComplexOps.c | 8 + test/CodeGen/2005-05-06-CountBuiltins.c | 17 + test/CodeGen/2005-05-10-GlobalUnionInit.c | 6 + .../CodeGen/2005-06-15-ExpandGotoInternalProblem.c | 14 + test/CodeGen/2005-07-20-SqrtNoErrno.c | 10 + test/CodeGen/2005-07-26-UnionInitCrash.c | 3 + test/CodeGen/2005-07-28-IncorrectWeakGlobal.c | 5 + test/CodeGen/2005-09-20-ComplexConstants.c | 4 + test/CodeGen/2005-09-24-AsmUserPrefix.c | 8 + test/CodeGen/2005-09-24-BitFieldCrash.c | 33 + test/CodeGen/2005-12-04-AttributeUsed.c | 7 + test/CodeGen/2005-12-04-DeclarationLineNumbers.c | 23 + test/CodeGen/2006-01-13-Includes.c | 10 + test/CodeGen/2006-01-13-StackSave.c | 11 + .../2006-01-16-BitCountIntrinsicsUnsigned.c | 12 + test/CodeGen/2006-01-23-FileScopeAsm.c | 12 + test/CodeGen/2006-03-03-MissingInitializer.c | 10 + test/CodeGen/2006-03-16-VectorCtor.c | 10 + test/CodeGen/2006-03-17-KnRMismatch.c | 8 + test/CodeGen/2006-05-19-SingleEltReturn.c | 23 + test/CodeGen/2006-07-31-PR854.c | 12 + test/CodeGen/2006-09-11-BitfieldRefCrash.c | 12 + test/CodeGen/2006-09-18-fwrite-cast-crash.c | 12 + test/CodeGen/2006-09-21-IncompleteElementType.c | 3 + test/CodeGen/2006-09-25-DebugFilename.c | 4 + test/CodeGen/2006-09-25-DebugFilename.h | 6 + test/CodeGen/2006-09-28-SimpleAsm.c | 12 + test/CodeGen/2006-10-30-ArrayCrash.c | 17 + test/CodeGen/2006-12-14-ordered_expr.c | 6 + test/CodeGen/2007-01-06-KNR-Proto.c | 10 + test/CodeGen/2007-01-20-VectorICE.c | 11 + test/CodeGen/2007-01-24-InlineAsmCModifier.c | 12 + test/CodeGen/2007-02-04-AddrLValue-2.c | 13 + test/CodeGen/2007-02-04-AddrLValue.c | 23 + test/CodeGen/2007-02-04-EmptyStruct.c | 9 + test/CodeGen/2007-02-07-AddrLabel.c | 10 + test/CodeGen/2007-02-16-VoidPtrDiff.c | 5 + test/CodeGen/2007-02-25-C-DotDotDot.c | 10 + test/CodeGen/2007-03-01-VarSizeArrayIdx.c | 7 + test/CodeGen/2007-03-05-DataLayout.c | 55 + test/CodeGen/2007-03-26-BitfieldAfterZeroWidth.c | 6 + test/CodeGen/2007-03-26-ZeroWidthBitfield.c | 2 + test/CodeGen/2007-03-27-VarLengthArray.c | 9 + test/CodeGen/2007-04-05-PackedBitFields-2.c | 16 + test/CodeGen/2007-04-05-PackedBitFields.c | 16 + test/CodeGen/2007-04-05-PackedStruct.c | 18 + test/CodeGen/2007-04-05-PadBeforeZeroLengthField.c | 9 + test/CodeGen/2007-04-05-UnPackedStruct.c | 16 + test/CodeGen/2007-04-11-InlineAsmStruct.c | 8 + test/CodeGen/2007-04-11-InlineAsmUnion.c | 7 + test/CodeGen/2007-04-11-PR1321.c | 12 + test/CodeGen/2007-04-13-InlineAsmStruct2.c | 9 + test/CodeGen/2007-04-13-InlineAsmUnion2.c | 8 + test/CodeGen/2007-04-14-FNoBuiltin.c | 7 + test/CodeGen/2007-04-17-ZeroSizeBitFields.c | 4 + test/CodeGen/2007-04-24-VolatileStructCopy.c | 11 + test/CodeGen/2007-04-24-bit-not-expr.c | 7 + test/CodeGen/2007-04-24-str-const.c | 17 + test/CodeGen/2007-05-07-PaddingElements.c | 12 + test/CodeGen/2007-05-08-PCH.c | 7 + test/CodeGen/2007-05-11-str-const.c | 5 + test/CodeGen/2007-05-15-PaddingElement.c | 23 + test/CodeGen/2007-05-16-EmptyStruct.c | 5 + test/CodeGen/2007-05-29-UnionCopy.c | 18 + test/CodeGen/2007-06-05-NoInlineAttribute.c | 13 + test/CodeGen/2007-06-15-AnnotateAttribute.c | 21 + test/CodeGen/2007-06-18-SextAttrAggregate.c | 12 + test/CodeGen/2007-07-29-RestrictPtrArg.c | 6 + test/CodeGen/2007-08-01-LoadStoreAlign.c | 18 + test/CodeGen/2007-08-21-ComplexCst.c | 3 + test/CodeGen/2007-08-22-CTTZ.c | 8 + test/CodeGen/2007-09-05-ConstCtor.c | 14 + test/CodeGen/2007-09-12-PragmaPack.c | 32 + test/CodeGen/2007-09-14-NegatePointer.c | 7 + test/CodeGen/2007-09-17-WeakRef.c | 10 + test/CodeGen/2007-09-26-Alignment.c | 8 + test/CodeGen/2007-09-27-ComplexIntCompare.c | 15 + test/CodeGen/2007-09-28-PackedUnionMember.c | 38 + test/CodeGen/2007-10-02-VolatileArray.c | 7 + test/CodeGen/2007-10-15-VoidPtr.c | 4 + test/CodeGen/2007-10-30-Volatile.c | 6 + test/CodeGen/2007-11-07-AlignedMemcpy.c | 4 + test/CodeGen/2007-11-07-CopyAggregateAlign.c | 7 + test/CodeGen/2007-11-07-ZeroAggregateAlign.c | 5 + test/CodeGen/2007-11-28-GlobalInitializer.c | 8 + test/CodeGen/2007-12-16-AsmNoUnwind.c | 3 + test/CodeGen/2008-01-04-WideBitfield.c | 12 + test/CodeGen/2008-01-07-UnusualIntSize.c | 15 + test/CodeGen/2008-01-11-ChainConsistency.c | 3 + test/CodeGen/2008-01-21-PackedBitFields.c | 7 + test/CodeGen/2008-01-21-PackedStructField.c | 18 + test/CodeGen/2008-01-24-StructAlignAndBitFields.c | 4 + test/CodeGen/2008-01-25-ByValReadNone.c | 16 + test/CodeGen/2008-01-25-ZeroSizedAggregate.c | 39 + test/CodeGen/2008-01-28-PragmaMark.c | 6 + test/CodeGen/2008-01-28-UnionSize.c | 24 + test/CodeGen/2008-03-03-CtorAttrType.c | 6 + test/CodeGen/2008-03-05-syncPtr.c | 40 + test/CodeGen/2008-03-24-BitField-And-Alloca.c | 89 + test/CodeGen/2008-03-26-PackedBitFields.c | 7 + test/CodeGen/2008-04-08-NoExceptions.c | 10 + test/CodeGen/2008-05-06-CFECrash.c | 4 + test/CodeGen/2008-05-12-TempUsedBeforeDef.c | 10 + test/CodeGen/2008-05-19-AlwaysInline.c | 12 + test/CodeGen/2008-08-07-AlignPadding1.c | 32 + test/CodeGen/2008-08-07-AlignPadding2.c | 18 + test/CodeGen/2008-08-07-GEPIntToPtr.c | 15 + test/CodeGen/2008-09-03-WeakAlias.c | 9 + test/CodeGen/2008-10-13-FrontendCrash.c | 9 + test/CodeGen/2008-10-30-ZeroPlacement.c | 9 + test/CodeGen/2008-11-02-WeakAlias.c | 6 + test/CodeGen/2008-11-08-InstCombineSelect.c | 17 + test/CodeGen/2008-12-23-AsmIntPointerTie.c | 8 + test/CodeGen/2009-01-05-BlockInlining.c | 29 + test/CodeGen/2009-01-21-InvalidIterator.c | 74 + test/CodeGen/2009-02-13-zerosize-union-field-ppc.c | 14 + test/CodeGen/2009-02-13-zerosize-union-field.c | 16 + test/CodeGen/2009-03-01-MallocNoAlias.c | 3 + test/CodeGen/2009-03-08-ZeroEltStructCrash.c | 14 + test/CodeGen/2009-03-13-dbg.c | 2 + test/CodeGen/2009-04-28-UnionArrayCrash.c | 11 + test/CodeGen/2009-05-04-EnumInreg.c | 17 + test/CodeGen/2009-06-14-HighlyAligned.c | 8 + test/CodeGen/2009-06-18-StaticInitTailPadPack.c | 26 + test/CodeGen/2009-07-14-VoidPtr.c | 6 + test/CodeGen/2009-07-15-pad-wchar_t-array.c | 17 + test/CodeGen/2009-07-22-StructLayout.c | 34 + test/CodeGen/2009-09-24-SqrtErrno.c | 12 + test/CodeGen/2009-12-07-BitFieldAlignment.c | 15 + test/CodeGen/2010-01-13-MemBarrier.c | 11 + test/CodeGen/2010-01-14-FnType-DebugInfo.c | 4 + test/CodeGen/2010-01-18-Inlined-Debug.c | 12 + test/CodeGen/2010-02-10-PointerName.c | 7 + test/CodeGen/2010-02-15-DbgStaticVar.c | 13 + test/CodeGen/2010-03-5-LexicalScope.c | 10 + test/CodeGen/2010-05-26-AsmSideEffect.c | 9 + test/CodeGen/2010-06-11-SaveExpr.c | 8 + test/CodeGen/2010-06-17-asmcrash.c | 16 + test/CodeGen/2010-07-08-DeclDebugLineNo.c | 10 + test/CodeGen/2010-07-14-overconservative-align.c | 14 + test/CodeGen/2010-07-14-ref-off-end.c | 24 + test/CodeGen/2010-08-12-asm-aggr-arg.c | 16 + test/CodeGen/2010-12-01-CommonGlobal.c | 7 + test/CodeGen/2011-02-21-DATA-common.c | 5 + test/CodeGen/2011-03-02-UnionInitializer.c | 2 + .../CodeGen/2011-03-08-ZeroFieldUnionInitializer.c | 7 + test/CodeGen/2011-03-31-ArrayRefFolding.c | 15 + test/CodeGen/Atomics.c | 203 + test/CodeGen/BasicInstrs.c | 25 + test/CodeGen/always-inline.c | 12 + test/CodeGen/annotate.c | 10 - test/CodeGen/annotations-builtin.c | 52 + test/CodeGen/annotations-field.c | 27 + test/CodeGen/annotations-global.c | 41 + test/CodeGen/annotations-loc.c | 10 + test/CodeGen/annotations-var.c | 48 + test/CodeGen/arm-aapcs-vfp.c | 82 + test/CodeGen/arm-apcs-zerolength-bitfield.c | 240 ++ test/CodeGen/arm-arguments.c | 28 +- test/CodeGen/arm-inline-asm.c | 6 + test/CodeGen/arm-vaarg-align.c | 33 + test/CodeGen/arm-vector-arguments.c | 6 +- test/CodeGen/arrayderef.c | 16 + test/CodeGen/asm-reg-var-local.c | 24 + test/CodeGen/asm.c | 18 + test/CodeGen/assign.c | 6 +- test/CodeGen/atomic-ops.c | 77 + test/CodeGen/atomic.c | 111 +- test/CodeGen/attr-naked.c | 11 +- test/CodeGen/attribute_constructor.c | 6 + test/CodeGen/avx-shuffle-builtins.c | 16 + test/CodeGen/block-3.c | 8 + test/CodeGen/block-copy.c | 20 + test/CodeGen/block-decl-merging.c | 20 - test/CodeGen/blocks.c | 4 +- test/CodeGen/builtin-attributes.c | 41 + test/CodeGen/capture-complex-expr-in-block.c | 20 + test/CodeGen/char-literal.c | 78 +- test/CodeGen/complex-init-list.c | 12 + test/CodeGen/debug-dead-local-var.c | 14 + test/CodeGen/debug-info-iv.c | 10 +- test/CodeGen/debug-info-line.c | 14 +- test/CodeGen/debug-info-line3.c | 16 + test/CodeGen/debug-info-member.c | 2 +- test/CodeGen/decl.c | 8 +- test/CodeGen/exact-div-expr.c | 6 + test/CodeGen/exceptions.c | 6 +- test/CodeGen/extern-weak.c | 12 + test/CodeGen/fp16-ops.c | 283 ++ test/CodeGen/func-aligned.c | 7 + test/CodeGen/funccall.c | 17 + test/CodeGen/function-attributes.c | 22 + test/CodeGen/functions.c | 4 +- test/CodeGen/hidden-visibility.c | 4 + test/CodeGen/implicit-arg.c | 10 + test/CodeGen/inline-asm-mrv.c | 12 + test/CodeGen/inline.c | 20 +- test/CodeGen/kr-call.c | 12 + test/CodeGen/libcalls-d.c | 16 + test/CodeGen/libcalls-ld.c | 19 + test/CodeGen/libcalls.c | 6 +- test/CodeGen/microsoft-call-conv.c | 2 +- test/CodeGen/misaligned-param.c | 13 + test/CodeGen/mrtd.c | 2 +- test/CodeGen/ms_struct-bitfield-1.c | 62 +- test/CodeGen/pascal-wchar-string.c | 2 +- test/CodeGen/pr2394.c | 7 + test/CodeGen/pr3518.c | 29 + test/CodeGen/pr4349.c | 38 + test/CodeGen/pr5406.c | 17 + test/CodeGen/pragma-weak.c | 15 +- test/CodeGen/redef-ext-inline.c | 6 + test/CodeGen/sret.c | 15 + test/CodeGen/sret2.c | 9 + test/CodeGen/sse-builtins.c | 104 + test/CodeGen/stdcall-fastcall.c | 2 +- test/CodeGen/string-literal-short-wstring.c | 2 +- test/CodeGen/string-literal.c | 78 +- test/CodeGen/struct-init.c | 10 +- test/CodeGen/struct-matching-constraint.c | 13 + test/CodeGen/struct-passing.c | 4 +- test/CodeGen/target-data.c | 6 +- test/CodeGen/unaligned-memcpy.c | 5 + test/CodeGen/union-align.c | 17 + test/CodeGen/vla-2.c | 10 + test/CodeGen/vla-3.c | 11 + test/CodeGen/volatile-1.c | 254 +- test/CodeGen/volatile-2.c | 12 +- test/CodeGen/wchar-const.c | 24 + test/CodeGen/weak_constant.c | 13 + test/CodeGen/x86_32-arguments-darwin.c | 18 +- test/CodeGen/x86_64-arguments.c | 6 +- test/CodeGenCUDA/device-stub.cu | 13 + test/CodeGenCUDA/filter-decl.cu | 40 + test/CodeGenCUDA/kernel-call.cu | 13 + test/CodeGenCUDA/ptx-kernels.cu | 12 + test/CodeGenCXX/2003-11-02-WeakLinkage.cpp | 13 + .../2003-11-18-PtrMemConstantInitializer.cpp | 13 + .../2003-11-27-MultipleInheritanceThunk.cpp | 28 + .../2003-11-29-DuplicatedCleanupTest.cpp | 41 + .../2003-12-08-ArrayOfPtrToMemberFunc.cpp | 12 + .../2004-01-11-DynamicInitializedConstant.cpp | 6 + test/CodeGenCXX/2004-03-08-ReinterpretCastCopy.cpp | 21 + .../2004-03-09-UnmangledBuiltinMethods.cpp | 8 + test/CodeGenCXX/2004-03-15-CleanupsAndGotos.cpp | 14 + .../2004-06-08-LateTemplateInstantiation.cpp | 18 + test/CodeGenCXX/2004-09-27-DidntEmitTemplate.cpp | 22 + .../2004-11-27-ExceptionCleanupAssertion.cpp | 14 + .../2004-11-27-FriendDefaultArgCrash.cpp | 9 + test/CodeGenCXX/2005-01-03-StaticInitializers.cpp | 8 + test/CodeGenCXX/2005-02-11-AnonymousUnion.cpp | 32 + test/CodeGenCXX/2005-02-13-BadDynamicInit.cpp | 9 + test/CodeGenCXX/2005-02-14-BitFieldOffset.cpp | 12 + test/CodeGenCXX/2005-02-19-BitfieldStructCrash.cpp | 14 + .../2005-02-19-UnnamedVirtualThunkArgument.cpp | 22 + test/CodeGenCXX/2005-02-20-BrokenReferenceTest.cpp | 10 + test/CodeGenCXX/2006-03-01-GimplifyCrash.cpp | 14 + test/CodeGenCXX/2006-03-06-C++RecurseCrash.cpp | 23 + test/CodeGenCXX/2006-09-12-OpaqueStructCrash.cpp | 27 + test/CodeGenCXX/2006-10-30-ClassBitfield.cpp | 16 + test/CodeGenCXX/2006-11-20-GlobalSymbols.cpp | 11 + test/CodeGenCXX/2006-11-30-ConstantExprCrash.cpp | 21 + test/CodeGenCXX/2007-01-02-UnboundedArray.cpp | 14 + test/CodeGenCXX/2007-01-06-PtrMethodInit.cpp | 75 + test/CodeGenCXX/2007-04-05-PackedBitFields-1.cpp | 22 + .../2007-04-05-PackedBitFieldsOverlap-2.cpp | 23 + .../2007-04-05-PackedBitFieldsOverlap.cpp | 23 + .../CodeGenCXX/2007-04-05-PackedBitFieldsSmall.cpp | 27 + .../2007-04-05-StructPackedFieldUnpacked.cpp | 24 + test/CodeGenCXX/2007-04-10-PackedUnion.cpp | 41 + test/CodeGenCXX/2007-04-14-FNoBuiltin.cpp | 8 + test/CodeGenCXX/2007-05-03-VectorInit.cpp | 17 + test/CodeGenCXX/2007-07-29-RestrictPtrArg.cpp | 7 + test/CodeGenCXX/2007-07-29-RestrictRefArg.cpp | 7 + .../2007-09-10-RecursiveTypeResolution.cpp | 87 + test/CodeGenCXX/2007-10-01-StructResize.cpp | 13 + test/CodeGenCXX/2008-01-12-VecInit.cpp | 5 + test/CodeGenCXX/2008-05-07-CrazyOffsetOf.cpp | 8 + test/CodeGenCXX/2009-03-17-dbg.cpp | 15 + test/CodeGenCXX/2009-04-23-bool2.cpp | 15 + test/CodeGenCXX/2009-05-04-PureConstNounwind.cpp | 15 + test/CodeGenCXX/2009-06-16-DebugInfoCrash.cpp | 10 + test/CodeGenCXX/2009-07-16-Using.cpp | 8 + test/CodeGenCXX/2009-08-05-ZeroInitWidth.cpp | 11 + test/CodeGenCXX/2009-08-11-VectorRetTy.cpp | 13 + test/CodeGenCXX/2009-09-09-packed-layout.cpp | 18 + test/CodeGenCXX/2009-10-27-crash.cpp | 43 + test/CodeGenCXX/2009-12-23-MissingSext.cpp | 16 + test/CodeGenCXX/2010-05-10-Var-DbgInfo.cpp | 42 + .../2010-05-11-alwaysinlineinstantiation.cpp | 33 + test/CodeGenCXX/2010-05-12-PtrToMember-Dbg.cpp | 17 + test/CodeGenCXX/2010-06-21-LocalVarDbg.cpp | 14 + test/CodeGenCXX/2010-06-22-BitfieldInit.cpp | 20 + test/CodeGenCXX/2010-06-22-ZeroBitfield.cpp | 5 + test/CodeGenCXX/2010-07-23-DeclLoc.cpp | 86 + test/CodeGenCXX/PR5050-constructor-conversion.cpp | 4 +- test/CodeGenCXX/abstract-class-ctors-dtors.cpp | 2 +- .../anonymous-union-member-initializer.cpp | 49 + test/CodeGenCXX/apple-kext-linkage.C | 12 +- test/CodeGenCXX/arm.cpp | 10 +- test/CodeGenCXX/array-construction.cpp | 4 +- test/CodeGenCXX/array-operator-delete-call.cpp | 4 +- test/CodeGenCXX/blocks.cpp | 24 + test/CodeGenCXX/builtins.cpp | 12 + test/CodeGenCXX/cast-conversion.cpp | 4 +- test/CodeGenCXX/class-layout.cpp | 32 + test/CodeGenCXX/conditional-expr-lvalue.cpp | 13 + test/CodeGenCXX/constructor-conversion.cpp | 4 +- test/CodeGenCXX/constructor-convert.cpp | 1 + test/CodeGenCXX/constructor-default-arg.cpp | 4 +- test/CodeGenCXX/constructor-for-array-members.cpp | 4 +- test/CodeGenCXX/constructor-init.cpp | 74 +- test/CodeGenCXX/constructor-template.cpp | 4 +- test/CodeGenCXX/conversion-function.cpp | 4 +- test/CodeGenCXX/convert-to-fptr.cpp | 4 +- test/CodeGenCXX/copy-assign-synthesis-1.cpp | 4 +- test/CodeGenCXX/copy-assign-volatile-synthesis.cpp | 43 + test/CodeGenCXX/cxx0x-defaulted-templates.cpp | 2 +- test/CodeGenCXX/cxx0x-delegating-ctors.cpp | 2 +- test/CodeGenCXX/cxx0x-initializer-scalars.cpp | 7 + test/CodeGenCXX/debug-info-char16.cpp | 9 + test/CodeGenCXX/debug-info-cxx0x.cpp | 2 +- test/CodeGenCXX/debug-info-nullptr.cpp | 8 + test/CodeGenCXX/debug-info-wchar.cpp | 5 + test/CodeGenCXX/debug-info.cpp | 12 + test/CodeGenCXX/delete.cpp | 13 +- test/CodeGenCXX/derived-to-base-conv.cpp | 4 +- test/CodeGenCXX/destructors.cpp | 36 +- test/CodeGenCXX/dynamic-cast-always-null.cpp | 2 +- test/CodeGenCXX/dynamic-cast.cpp | 3 +- test/CodeGenCXX/eh.cpp | 46 +- test/CodeGenCXX/exceptions.cpp | 37 +- test/CodeGenCXX/for-range-temporaries.cpp | 14 +- test/CodeGenCXX/for-range.cpp | 2 +- test/CodeGenCXX/fp16-mangle.cpp | 12 + test/CodeGenCXX/fp16-overload.cpp | 10 + test/CodeGenCXX/global-array-destruction.cpp | 2 +- test/CodeGenCXX/goto.cpp | 1 - test/CodeGenCXX/incomplete-types.cpp | 43 + test/CodeGenCXX/init-incomplete-type.cpp | 31 - test/CodeGenCXX/m64-ptr.cpp | 18 + test/CodeGenCXX/mangle-alias-template.cpp | 2 +- test/CodeGenCXX/mangle-exprs.cpp | 2 +- test/CodeGenCXX/mangle-ref-qualifiers.cpp | 2 +- test/CodeGenCXX/mangle-subst-std.cpp | 6 +- test/CodeGenCXX/mangle-unnameable-conversions.cpp | 2 +- test/CodeGenCXX/mangle-variadic-templates.cpp | 2 +- test/CodeGenCXX/mangle.cpp | 13 +- test/CodeGenCXX/member-alignment.cpp | 20 + test/CodeGenCXX/member-function-pointers.cpp | 2 +- test/CodeGenCXX/member-init-anon-union.cpp | 35 + test/CodeGenCXX/member-init-ctor.cpp | 2 +- test/CodeGenCXX/nrvo.cpp | 13 +- test/CodeGenCXX/nullptr.cpp | 2 +- test/CodeGenCXX/partial-destruction.cpp | 21 +- test/CodeGenCXX/pr9965.cpp | 2 +- test/CodeGenCXX/ptr-to-member-function.cpp | 4 +- test/CodeGenCXX/reference-cast.cpp | 24 + test/CodeGenCXX/reinterpret-cast.cpp | 2 +- test/CodeGenCXX/rvalue-references.cpp | 28 +- test/CodeGenCXX/scoped-enums.cpp | 2 +- test/CodeGenCXX/sizeof-unwind-exception.cpp | 28 + test/CodeGenCXX/static-assert.cpp | 2 +- test/CodeGenCXX/static-init.cpp | 4 +- test/CodeGenCXX/template-instantiation.cpp | 36 + test/CodeGenCXX/temporaries.cpp | 6 +- test/CodeGenCXX/threadsafe-statics-exceptions.cpp | 7 +- test/CodeGenCXX/thunk-linkonce-odr.cpp | 33 + test/CodeGenCXX/typeid.cpp | 3 +- test/CodeGenCXX/union-dtor.cpp | 42 + test/CodeGenCXX/value-init.cpp | 19 + test/CodeGenCXX/vararg-conversion-ctor.cpp | 2 +- test/CodeGenCXX/varargs.cpp | 43 + test/CodeGenCXX/variadic-templates.cpp | 2 +- test/CodeGenCXX/visibility.cpp | 2 +- test/CodeGenCXX/volatile-1.cpp | 288 +- test/CodeGenCXX/vtable-layout-abi-examples.cpp | 435 +- test/CodeGenCXX/weak-external.cpp | 66 + .../x86-64-abi-sret-vs-2word-struct-param.cpp | 29 + test/CodeGenCXX/x86_32-arguments.cpp | 8 +- test/CodeGenObjC/2007-04-03-ObjcEH.m | 27 + test/CodeGenObjC/2007-05-02-Strong.m | 23 + test/CodeGenObjC/2007-10-18-ProDescriptor.m | 18 + test/CodeGenObjC/2007-10-23-GC-WriteBarrier.m | 9 + test/CodeGenObjC/2008-10-3-EhValue.m | 50 + test/CodeGenObjC/2008-11-12-Metadata.m | 14 + test/CodeGenObjC/2008-11-24-ConstCFStrings.m | 13 + test/CodeGenObjC/2008-11-25-Blocks.m | 17 + test/CodeGenObjC/2009-01-26-WriteBarrier-2.m | 19 + test/CodeGenObjC/2009-02-05-VolatileProp.m | 10 + test/CodeGenObjC/2009-08-05-utf16.m | 5 + test/CodeGenObjC/2010-02-01-utf16-with-null.m | 5 + test/CodeGenObjC/2010-02-23-DbgInheritance.m | 10 + test/CodeGenObjC/2010-03-17-StructRef.m | 43 + test/CodeGenObjC/2011-03-08-IVarLookup.m | 30 + test/CodeGenObjC/arc-arm.m | 2 +- test/CodeGenObjC/arc-block-copy-escape.m | 22 + test/CodeGenObjC/arc-block-ivar-layout.m | 2 +- test/CodeGenObjC/arc-bridged-cast.m | 2 +- test/CodeGenObjC/arc-compound-stmt.m | 2 +- test/CodeGenObjC/arc-foreach.m | 107 +- test/CodeGenObjC/arc-ivar-layout.m | 2 +- test/CodeGenObjC/arc-no-runtime.m | 2 +- test/CodeGenObjC/arc-related-result-type.m | 2 +- test/CodeGenObjC/arc-unbridged-cast.m | 4 +- test/CodeGenObjC/arc-unopt.m | 2 +- test/CodeGenObjC/arc-weak-property.m | 2 +- test/CodeGenObjC/arc-with-atthrow.m | 17 + test/CodeGenObjC/arc.m | 394 +- test/CodeGenObjC/arm-atomic-scalar-setter-getter.m | 2 +- test/CodeGenObjC/assign.m | 2 +- test/CodeGenObjC/atomic-aggregate-property.m | 25 +- test/CodeGenObjC/attr-availability.m | 6 +- test/CodeGenObjC/autorelease.m | 4 +- test/CodeGenObjC/bitfield-1.m | 6 +- test/CodeGenObjC/bitfield-access.m | 4 +- test/CodeGenObjC/bitfield-ivar-offsets.m | 2 +- test/CodeGenObjC/bitfield_encoding.m | 4 +- test/CodeGenObjC/block-6.m | 2 +- test/CodeGenObjC/block-var-layout.m | 2 +- test/CodeGenObjC/blocks-1.m | 4 +- test/CodeGenObjC/blocks-2.m | 9 +- test/CodeGenObjC/blocks-3.m | 2 +- test/CodeGenObjC/blocks-4.m | 2 +- test/CodeGenObjC/blocks-5.m | 2 +- test/CodeGenObjC/blocks.m | 2 +- test/CodeGenObjC/builtins.m | 7 + test/CodeGenObjC/category-class.m | 2 +- test/CodeGenObjC/class-type.m | 6 +- test/CodeGenObjC/complex-property.m | 2 +- test/CodeGenObjC/constant-string-class-1.m | 2 +- test/CodeGenObjC/constant-string-class.m | 4 +- test/CodeGenObjC/deadcode_strip_used_var.m | 4 +- test/CodeGenObjC/debug-info-block-helper.m | 2 +- test/CodeGenObjC/debug-info-blocks.m | 2 +- test/CodeGenObjC/debug-info-class-extension.m | 2 +- test/CodeGenObjC/debug-info-class-extension2.m | 2 +- test/CodeGenObjC/debug-info-class-extension3.m | 2 +- test/CodeGenObjC/debug-info-crash-2.m | 15 + test/CodeGenObjC/debug-info-crash.m | 2 +- test/CodeGenObjC/debug-info-default-synth-ivar.m | 2 +- test/CodeGenObjC/debug-info-fnname.m | 15 - test/CodeGenObjC/debug-info-getter-name.m | 2 +- test/CodeGenObjC/debug-info-property2.m | 14 + test/CodeGenObjC/debug-info-static-var.m | 2 +- test/CodeGenObjC/default-property-synthesis.m | 2 +- test/CodeGenObjC/encode-cstyle-method.m | 2 +- test/CodeGenObjC/encode-test-4.m | 7 +- test/CodeGenObjC/encode-test.m | 2 +- test/CodeGenObjC/exceptions-nonfragile.m | 2 +- test/CodeGenObjC/exceptions.m | 2 +- test/CodeGenObjC/forward-class-impl-metadata.m | 2 +- test/CodeGenObjC/fpret.m | 6 +- test/CodeGenObjC/gc-weak-attribute.m | 28 + test/CodeGenObjC/gc.m | 2 +- test/CodeGenObjC/gnu-exceptions.m | 6 +- test/CodeGenObjC/hidden-visibility.m | 2 +- test/CodeGenObjC/id-isa-codegen.m | 4 +- test/CodeGenObjC/image-info.m | 4 +- test/CodeGenObjC/implicit-objc_msgSend.m | 2 +- test/CodeGenObjC/instance-method-metadata.m | 2 +- test/CodeGenObjC/interface-layout-64.m | 2 +- test/CodeGenObjC/interface.m | 2 +- test/CodeGenObjC/ivar-layout-64-bitfields.m | 4 +- test/CodeGenObjC/ivar-layout-64.m | 4 +- test/CodeGenObjC/ivar-layout-array0-struct.m | 2 +- test/CodeGenObjC/ivar-layout-no-optimize.m | 4 +- test/CodeGenObjC/ivar-layout-nonfragile-abi2.m | 4 +- test/CodeGenObjC/ivars.m | 4 +- test/CodeGenObjC/link-errors.m | 4 +- test/CodeGenObjC/local-static-block.m | 2 +- test/CodeGenObjC/messages-2.m | 4 +- test/CodeGenObjC/messages.m | 8 +- test/CodeGenObjC/metadata-symbols-32.m | 2 +- test/CodeGenObjC/metadata-symbols-64.m | 2 +- test/CodeGenObjC/metadata_symbols.m | 6 +- test/CodeGenObjC/misc-atomic-property.m | 4 +- test/CodeGenObjC/mrr-autorelease.m | 4 +- test/CodeGenObjC/nested-rethrow.m | 2 +- test/CodeGenObjC/next-objc-dispatch.m | 8 +- test/CodeGenObjC/no-category-class.m | 2 +- test/CodeGenObjC/no-vararg-messaging.m | 2 +- test/CodeGenObjC/non-lazy-classes.m | 2 +- test/CodeGenObjC/nonlazy-msgSend.m | 2 +- test/CodeGenObjC/ns-constant-strings.m | 4 +- test/CodeGenObjC/objc-align.m | 2 +- test/CodeGenObjC/objc-assign-ivar.m | 2 +- test/CodeGenObjC/objc-gc-aggr-assign.m | 4 +- test/CodeGenObjC/objc-read-weak-byref.m | 4 +- test/CodeGenObjC/objc2-assign-global.m | 2 +- test/CodeGenObjC/objc2-ivar-assign.m | 2 +- test/CodeGenObjC/objc2-legacy-dispatch.m | 4 +- test/CodeGenObjC/objc2-new-gc-api-strongcast.m | 4 +- test/CodeGenObjC/objc2-no-write-barrier.m | 4 +- test/CodeGenObjC/objc2-nonfragile-abi-impl.m | 2 +- test/CodeGenObjC/objc2-retain-codegen.m | 4 +- test/CodeGenObjC/objc2-strong-cast-1.m | 4 +- test/CodeGenObjC/objc2-strong-cast-block-import.m | 25 + test/CodeGenObjC/objc2-weak-assign.m | 4 +- test/CodeGenObjC/objc2-weak-block-call.m | 4 +- test/CodeGenObjC/objc2-weak-compare.m | 4 +- test/CodeGenObjC/objc2-weak-import-attribute.m | 2 +- test/CodeGenObjC/objc2-weak-ivar-debug.m | 8 +- test/CodeGenObjC/objc2-weak-ivar.m | 4 +- test/CodeGenObjC/objc2-write-barrier-2.m | 4 +- test/CodeGenObjC/objc2-write-barrier-3.m | 4 +- test/CodeGenObjC/objc2-write-barrier-4.m | 4 +- test/CodeGenObjC/objc2-write-barrier-5.m | 25 +- test/CodeGenObjC/objc2-write-barrier.m | 4 +- test/CodeGenObjC/object-incr-decr-1.m | 2 +- test/CodeGenObjC/predefined-expr.m | 2 +- test/CodeGenObjC/property-aggr-type.m | 50 - test/CodeGenObjC/property-aggregate.m | 31 + test/CodeGenObjC/property-category-impl.m | 2 +- test/CodeGenObjC/property-complex.m | 4 +- test/CodeGenObjC/property-list-in-class.m | 2 +- test/CodeGenObjC/property-ref-cast-to-void.m | 4 +- test/CodeGenObjC/property-type-mismatch.m | 2 +- test/CodeGenObjC/property.m | 9 + test/CodeGenObjC/protocol-in-extended-class.m | 4 +- test/CodeGenObjC/protocol-property-synth.m | 2 +- test/CodeGenObjC/protocols-lazy.m | 2 +- .../rdr-6732143-dangling-block-reference.m | 2 +- test/CodeGenObjC/simplify-exceptions.mm | 2 +- test/CodeGenObjC/stand-alone-implementation.m | 2 +- test/CodeGenObjC/super-dotsyntax-struct-property.m | 2 +- test/CodeGenObjC/super-message-fragileabi.m | 2 +- test/CodeGenObjC/synchronized.m | 2 +- test/CodeGenObjC/synthesize_ivar-cont-class.m | 2 +- test/CodeGenObjC/synthesize_ivar.m | 2 +- test/CodeGenObjC/terminate.m | 12 +- test/CodeGenObjC/variadic-sends.m | 4 +- test/CodeGenObjC/x86_64-struct-return-gc.m | 2 +- test/CodeGenObjCXX/2007-10-03-MetadataPointers.mm | 7 + test/CodeGenObjCXX/2010-08-04-Template.mm | 10 + test/CodeGenObjCXX/2010-08-06-X.Y-syntax.mm | 16 + test/CodeGenObjCXX/arc-globals.mm | 2 +- test/CodeGenObjCXX/arc-mangle.mm | 2 +- test/CodeGenObjCXX/arc-move.mm | 2 +- test/CodeGenObjCXX/arc-new-delete.mm | 2 +- test/CodeGenObjCXX/arc-pseudo-destructors.mm | 2 +- test/CodeGenObjCXX/arc-references.mm | 7 +- .../arc-returns-inner-reference-ptr.mm | 22 + test/CodeGenObjCXX/arc-special-member-functions.mm | 18 +- test/CodeGenObjCXX/arc.mm | 47 +- test/CodeGenObjCXX/block-in-template-inst.mm | 2 +- test/CodeGenObjCXX/block-var-layout.mm | 2 +- test/CodeGenObjCXX/blocks.mm | 6 +- test/CodeGenObjCXX/catch-id-type.mm | 7 +- test/CodeGenObjCXX/copy.mm | 17 +- test/CodeGenObjCXX/copyable-property-object.mm | 2 +- test/CodeGenObjCXX/encode.mm | 41 + test/CodeGenObjCXX/exceptions.mm | 5 +- test/CodeGenObjCXX/gc.mm | 2 +- .../CodeGenObjCXX/implicit-copy-assign-operator.mm | 2 +- test/CodeGenObjCXX/implicit-copy-constructor.mm | 2 +- test/CodeGenObjCXX/mangle-blocks.mm | 2 +- test/CodeGenObjCXX/message-reference.mm | 2 +- test/CodeGenObjCXX/nrvo.mm | 32 + .../CodeGenObjCXX/property-derived-to-base-conv.mm | 2 +- test/CodeGenObjCXX/property-dot-copy.mm | 2 +- test/CodeGenObjCXX/property-dot-reference.mm | 2 +- .../property-object-conditional-exp.mm | 2 +- test/CodeGenObjCXX/property-object-reference.mm | 23 + test/CodeGenObjCXX/property-objects.mm | 2 +- test/CodeGenObjCXX/property-reference.mm | 52 +- test/CodeGenObjCXX/refence-assign-write-barrier.mm | 2 +- test/CodeGenObjCXX/selector-expr-lvalue.mm | 2 +- test/CodeGenObjCXX/write-barrier-global-assign.mm | 2 +- test/CodeGenOpenCL/local.cl | 7 + test/CodeGenOpenCL/ptx-calls.cl | 12 + test/CodeGenOpenCL/ptx-kernels.cl | 10 + test/Driver/Inputs/basic_linux_tree/lib/.keep | 0 .../usr/i386-unknown-linux/lib/.keep | 0 test/Driver/Inputs/basic_linux_tree/usr/lib/.keep | 0 .../lib/gcc/i386-unknown-linux/4.6.0/crtbegin.o | 0 .../lib/gcc/x86_64-unknown-linux/4.6.0/crtbegin.o | 0 .../usr/x86_64-unknown-linux/lib/.keep | 0 test/Driver/Inputs/fake_install_tree/bin/.keep | 0 .../lib/gcc/i386-unknown-linux/4.7.0/crtbegin.o | 0 .../lib/gcc/x86_64-unknown-linux/4.5.0/crtbegin.o | 0 test/Driver/Inputs/gcc_version_parsing1/bin/.keep | 0 .../lib/gcc/i386-unknown-linux/4.7/crtbegin.o | 0 test/Driver/Inputs/gcc_version_parsing2/bin/.keep | 0 .../lib/gcc/i386-unknown-linux/4.7.x/crtbegin.o | 0 test/Driver/Inputs/gcc_version_parsing3/bin/.keep | 0 .../gcc/i386-unknown-linux/4.7.99-rc5/crtbegin.o | 0 .../Inputs/multilib_32bit_linux_tree/lib/.keep | 0 .../Inputs/multilib_32bit_linux_tree/lib32/.keep | 0 .../Inputs/multilib_32bit_linux_tree/lib64/.keep | 0 .../usr/i386-unknown-linux/lib/.keep | 0 .../usr/i386-unknown-linux/lib32/.keep | 0 .../usr/i386-unknown-linux/lib64/.keep | 0 .../Inputs/multilib_32bit_linux_tree/usr/lib/.keep | 0 .../lib/gcc/i386-unknown-linux/4.6.0/64/crtbegin.o | 0 .../lib/gcc/i386-unknown-linux/4.6.0/crtbegin.o | 0 .../multilib_32bit_linux_tree/usr/lib32/.keep | 0 .../multilib_32bit_linux_tree/usr/lib64/.keep | 0 .../Inputs/multilib_64bit_linux_tree/lib/.keep | 0 .../Inputs/multilib_64bit_linux_tree/lib32/.keep | 0 .../Inputs/multilib_64bit_linux_tree/lib64/.keep | 0 .../Inputs/multilib_64bit_linux_tree/usr/lib/.keep | 0 .../gcc/x86_64-unknown-linux/4.6.0/32/crtbegin.o | 0 .../lib/gcc/x86_64-unknown-linux/4.6.0/crtbegin.o | 0 .../multilib_64bit_linux_tree/usr/lib32/.keep | 0 .../multilib_64bit_linux_tree/usr/lib64/.keep | 0 .../usr/x86_64-unknown-linux/lib/.keep | 0 .../usr/x86_64-unknown-linux/lib32/.keep | 0 .../usr/x86_64-unknown-linux/lib64/.keep | 0 test/Driver/apple-kext-i386.cpp | 33 + test/Driver/cc-log-diagnostics.c | 2 +- test/Driver/ccc-host-triple-no-integrated-as.c | 17 + test/Driver/cpath.c | 20 + test/Driver/darwin-objc-defaults.m | 18 +- test/Driver/darwin-objc-options.m | 4 +- test/Driver/darwin-verify-debug.c | 34 + test/Driver/index-header-map.c | 4 + test/Driver/le32-unknown-nacl.cpp | 141 + test/Driver/linux-ld.c | 139 + test/Driver/mno-global-merge.c | 12 + test/Driver/nostdlibinc.c | 10 + test/Driver/objc++-cpp-output.mm | 8 + test/Driver/objc-cpp-output.m | 7 + test/Driver/rewrite-objc.m | 4 +- test/Driver/std.cpp | 24 + test/FixIt/dereference-addressof.c | 22 + test/FixIt/fixit-cxx0x.cpp | 41 +- test/FixIt/fixit-errors.c | 2 +- test/FixIt/fixit-function-call.cpp | 118 + test/FixIt/fixit-missing-method-return-type.m | 24 + test/FixIt/fixit-objc-message.m | 4 +- test/FixIt/fixit-objc.m | 14 + test/FixIt/fixit-static-object-decl.m | 29 + test/FixIt/fixit.c | 15 +- test/FixIt/fixit.cpp | 13 +- test/FixIt/typo-crash.cpp | 11 +- test/FixIt/typo.m | 6 +- test/Frontend/Weverything.c | 9 + test/Frontend/diagnostics-option-names.c | 8 + test/Frontend/warning-mapping-1.c | 6 + test/Frontend/warning-mapping-2.c | 5 + test/Frontend/warning-mapping-3.c | 10 + test/Frontend/warning-mapping-4.c | 6 + test/Frontend/warning-mapping-5.c | 9 + test/Headers/wchar_limits.cpp | 9 + test/Index/IBOutletCollection.m | 18 + test/Index/Inputs/preamble_macro_template.h | 6 + test/Index/TestClassDecl.m | 2 +- test/Index/TestClassForwardDecl.m | 4 +- test/Index/annotate-attribute.cpp | 33 + test/Index/annotate-context-sensitive.cpp | 6 +- test/Index/annotate-macro-args.h | 16 + test/Index/annotate-macro-args.m | 23 + test/Index/annotate-nested-name-specifier.cpp | 60 +- test/Index/annotate-tokens-cxx0x.cpp | 12 +- test/Index/annotate-tokens-pp.c | 70 +- test/Index/annotate-tokens-preamble.c | 20 + test/Index/annotate-tokens-with-default-args.cpp | 16 + test/Index/annotate-tokens-with-default-args.h | 3 + test/Index/annotate-tokens.c | 91 +- test/Index/annotate-tokens.cpp | 32 +- test/Index/annotate-tokens.m | 193 +- test/Index/blocks.c | 20 +- test/Index/c-index-api-loadTU-test.m | 22 +- test/Index/c-index-getCursor-pp.c | 4 + test/Index/c-index-getCursor-test.m | 44 +- test/Index/c-index-pch.c | 5 - test/Index/code-completion.cpp | 3 + test/Index/complete-access-checks.cpp | 89 + test/Index/complete-cxx-inline-methods.cpp | 24 + test/Index/complete-exprs.m | 4 +- test/Index/complete-in-stringify.c | 17 + test/Index/complete-interfaces.m | 4 + test/Index/complete-macro-args.c | 22 + test/Index/complete-macros.c | 14 + test/Index/complete-member-access.m | 15 + test/Index/complete-objc-message.m | 23 + test/Index/complete-qualified.cpp | 20 + test/Index/complete-stmt.c | 12 + test/Index/complete-synthesized.m | 30 +- test/Index/complete-with-annotations.cpp | 23 + test/Index/cursor-ref-names.cpp | 47 + test/Index/file-refs.c | 57 + test/Index/file-refs.cpp | 104 + test/Index/file-refs.m | 87 + test/Index/get-cursor-macro-args.h | 16 + test/Index/get-cursor-macro-args.m | 19 + test/Index/get-cursor.c | 14 + test/Index/get-cursor.cpp | 12 + test/Index/get-cursor.m | 37 + test/Index/getcursor-pp-pch.c | 43 + test/Index/getcursor-pp-pch.c.h | 5 + test/Index/in-class-init.cpp | 6 + test/Index/index-templates.cpp | 10 +- test/Index/load-stmts.cpp | 16 +- test/Index/local-symbols.m | 8 +- test/Index/nested-binaryoperators.cpp | 2179 +++++----- test/Index/nested-macro-instantiations.cpp | 4 +- test/Index/preamble-reparse-cmd-define.c | 9 + test/Index/preamble-reparse-cmd-define.c.h | 1 + test/Index/preamble-reparse-cmd-define.c.remap | 8 + test/Index/preamble.c | 4 +- test/Index/preamble_macro_template.cpp | 15 + test/Index/print-typekind.c | 11 +- test/Index/properties-class-extensions.m | 4 +- test/Index/rdar-8288645-invalid-code.mm | 1 - test/Index/recursive-cxx-member-calls.cpp | 1016 +++-- test/Index/recursive-member-access.c | 272 +- test/Index/remap-load.c | 2 +- test/Index/usrs-cxx0x.cpp | 2 +- test/Index/usrs.m | 81 +- test/Lexer/bcpl-escaped-newline.c | 12 + test/Lexer/constants.c | 2 + test/Lexer/cxx0x_keyword.cpp | 2 +- test/Lexer/cxx0x_keyword_as_cxx98.cpp | 37 +- test/Lexer/cxx0x_raw_string_delim_length.cpp | 3 + test/Lexer/cxx0x_raw_string_unterminated.cpp | 4 + test/Lexer/has_extension.c | 8 + test/Lexer/has_extension_cxx.cpp | 5 + test/Lexer/has_feature_c1x.c | 9 + test/Lexer/has_feature_cxx0x.cpp | 20 +- test/Lexer/has_feature_objc_arc.m | 4 +- test/Lexer/has_feature_type_traits.cpp | 5 + test/Lexer/hexfloat.cpp | 9 +- test/Lexer/newline-eof.c | 5 + test/Lexer/preamble.c | 4 +- test/Lexer/string_concat.cpp | 33 + test/Lexer/utf8-char-literal.cpp | 4 + test/Lexer/wchar.c | 4 +- test/Misc/ast-dump-templates.cpp | 39 + test/Misc/caret-diags-macros.c | 9 +- test/Misc/diag-aka-types.cpp | 2 +- test/Misc/diag-line-wrapping.cpp | 13 + test/Misc/error-limit-multiple-notes.cpp | 23 + test/Misc/error-limit.c | 15 + test/Misc/show-diag-options.c | 27 + test/Misc/warning-flags.c | 317 ++ .../Inputs/CmdLine.framework/Headers/CmdLine.h | 6 + .../Headers/DependsOnModule.h | 3 + .../Inputs/Module.framework/Headers/Module.h | 12 + .../Headers/MutuallyRecursive1.h | 3 + .../Headers/MutuallyRecursive2.h | 6 + test/Modules/Inputs/diamond_bottom.h | 4 + test/Modules/Inputs/diamond_left.h | 9 + test/Modules/Inputs/diamond_right.h | 7 + test/Modules/Inputs/diamond_top.h | 4 + test/Modules/Inputs/load_failure.h | 1 + test/Modules/Inputs/lookup_left.h | 3 + test/Modules/Inputs/lookup_left.hpp | 5 + test/Modules/Inputs/lookup_right.h | 5 + test/Modules/Inputs/lookup_right.hpp | 1 + test/Modules/Inputs/point.h | 2 + test/Modules/auto-module-import.c | 13 + test/Modules/cycles.c | 12 + test/Modules/diamond.c | 27 + test/Modules/driver.c | 6 + test/Modules/header-import.m | 7 + test/Modules/irgen.c | 15 + test/Modules/load_failure.c | 19 + test/Modules/lookup.cpp | 25 + test/Modules/lookup.m | 19 + test/Modules/macros.c | 41 + test/Modules/module-private.cpp | 140 + test/Modules/objc-categories.m | 89 + test/Modules/on-demand-build-warnings.m | 5 + test/Modules/on-demand-build.m | 17 + test/Modules/on-demand-macros.m | 13 + test/PCH/Inputs/cxx-method.h | 6 + test/PCH/arc.m | 14 +- test/PCH/chain-categories.m | 51 + test/PCH/chain-conversion-lookup.cpp | 26 + test/PCH/chain-decls.c | 2 +- test/PCH/chain-ext_vector.c | 2 +- test/PCH/chain-external-defs.c | 2 +- test/PCH/chain-friend-instantiation.cpp | 61 + test/PCH/chain-macro-override.c | 2 +- test/PCH/chain-macro.c | 2 +- test/PCH/chain-predecl.m | 2 +- test/PCH/chain-remap-types.m | 4 +- test/PCH/chain-selectors.m | 2 +- test/PCH/chain-trivial.c | 2 +- test/PCH/cxx-alias-decl.cpp | 6 +- test/PCH/cxx-for-range.cpp | 6 +- test/PCH/cxx-implicit-moves.cpp | 23 + test/PCH/cxx-member-init.cpp | 6 +- test/PCH/cxx-method.cpp | 11 +- .../cxx-ms-function-specialization-class-scope.cpp | 13 + .../cxx-ms-function-specialization-class-scope.h | 29 + test/PCH/cxx-reference.cpp | 6 +- test/PCH/cxx-static_assert.cpp | 6 +- test/PCH/cxx-variadic-templates.cpp | 10 +- test/PCH/cxx0x-default-delete.cpp | 6 +- test/PCH/cxx0x-delegating-ctors.cpp | 6 +- test/PCH/cxx_exprs.cpp | 6 +- test/PCH/functions.c | 2 +- test/PCH/method-redecls.m | 18 + test/PCH/modified-header-error.c | 2 + test/PCH/objc_methods.h | 2 +- test/PCH/objc_methods.m | 2 +- test/PCH/preamble.c | 6 +- test/PCH/reinclude.cpp | 2 +- test/PCH/types.c | 6 +- test/PCH/types.h | 5 +- test/Parser/DelayedTemplateParsing.cpp | 23 +- test/Parser/MicrosoftExtensions.c | 8 +- test/Parser/PR11000.cpp | 9 + test/Parser/access-spec-attrs.cpp | 12 + test/Parser/c1x-alignas.c | 7 + test/Parser/char-literal-printing.c | 36 + test/Parser/cxx-casting.cpp | 23 + test/Parser/cxx-class.cpp | 17 + test/Parser/cxx-default-delete.cpp | 2 +- test/Parser/cxx-ext-delete-default.cpp | 10 +- .../Parser/cxx-member-init-missing-paren-crash.cpp | 12 + test/Parser/cxx-member-initializers.cpp | 5 + test/Parser/cxx-reference.cpp | 2 +- test/Parser/cxx0x-attributes.cpp | 13 +- test/Parser/cxx0x-in-cxx98.cpp | 8 +- test/Parser/cxx0x-lambda-expressions.cpp | 27 + test/Parser/cxx0x-literal-operators.cpp | 7 +- test/Parser/cxx0x-member-initializers.cpp | 16 +- test/Parser/cxx0x-override-control-keywords.cpp | 2 +- test/Parser/cxx0x-rvalue-reference.cpp | 2 +- test/Parser/ms-inline-asm.c | 25 + test/Parser/objc-init.m | 4 +- test/Parser/objc-messaging-neg-1.m | 1 + test/Parser/objcxx-lambda-expressions-neg.mm | 5 + test/Parser/objcxx0x-lambda-expressions.mm | 26 + test/Parser/opencl-pragma.cl | 3 + test/Parser/opencl-storage-class.cl | 6 + test/Parser/parser_overflow.c | 7 + test/Parser/pragma-visibility2.c | 19 + test/Parser/switch-recovery.cpp | 2 +- test/Parser/top-level-semi-cxx0x.cpp | 2 +- test/Preprocessor/comment_save_if.c | 7 +- test/Preprocessor/expr_define_expansion.c | 5 + test/Preprocessor/init.c | 20 +- test/Preprocessor/missing-system-header.c | 2 + test/Preprocessor/missing-system-header.h | 2 + test/Preprocessor/non_fragile_feature.m | 2 +- test/Preprocessor/non_fragile_feature1.m | 2 +- test/Preprocessor/pp-record.c | 9 + test/Preprocessor/pp-record.h | 1 + test/Preprocessor/predefined-arch-macros.c | 866 ++++ test/Preprocessor/predefined-exceptions.m | 15 + test/Preprocessor/warning_tests.c | 19 + test/Rewriter/inner-block-helper-funcs.mm | 32 + test/Rewriter/instancetype-test.mm | 75 + test/Rewriter/protocol-rewrite-2.m | 7 + test/Rewriter/rewrite-cast-to-bool.mm | 17 + test/Rewriter/rewrite-foreach-in-block.mm | 28 + test/Rewriter/rewrite-forward-class.m | 29 +- test/Rewriter/rewrite-forward-class.mm | 44 + test/Sema/2007-10-01-BuildArrayRef.c | 20 + test/Sema/2009-03-09-WeakDeclarations-1.c | 16 + test/Sema/2009-04-22-UnknownSize.c | 4 + test/Sema/2009-07-17-VoidParameter.c | 4 + test/Sema/2010-05-31-palignr.c | 22 + test/Sema/Inputs/pragma-arc-cf-code-audited.h | 16 + test/Sema/address_spaces.c | 4 + test/Sema/alignas.c | 19 + test/Sema/annotate.c | 3 + test/Sema/array-bounds-ptr-arith.c | 14 + test/Sema/array-init.c | 2 +- test/Sema/atomic-ops.c | 37 + test/Sema/atomic-type.c | 22 + test/Sema/attr-availability.c | 3 +- test/Sema/attr-deprecated.c | 2 +- test/Sema/attr-returns-twice.c | 12 + test/Sema/attr-sentinel.c | 7 +- test/Sema/attr-unavailable-message.c | 21 + test/Sema/complex-init-list.c | 45 + test/Sema/conditional-expr.c | 25 +- test/Sema/conversion.c | 4 +- test/Sema/crash-invalid-array.c | 17 + test/Sema/dllimport-dllexport.c | 1 + test/Sema/exprs.c | 34 +- test/Sema/flexible-array-init.c | 35 +- test/Sema/format-strings-fixit.c | 2 +- test/Sema/format-strings.c | 17 +- test/Sema/fp16-sema.c | 30 + test/Sema/fpack-struct.c | 9 + test/Sema/i-c-e.c | 3 +- test/Sema/implicit-int.c | 6 +- test/Sema/init.c | 4 + test/Sema/initialize-noreturn.c | 16 + test/Sema/knr-def-call.c | 6 +- test/Sema/many-parameters.c | 310 ++ test/Sema/ms-fuzzy-asm.c | 9 - test/Sema/ms_class_layout.cpp | 176 + test/Sema/parentheses.c | 3 +- test/Sema/parentheses.cpp | 2 + test/Sema/pragma-arc-cf-code-audited.c | 18 + test/Sema/return-noreturn.c | 4 +- test/Sema/types.c | 13 + test/Sema/uninit-variables.c | 117 +- test/Sema/unused-expr.c | 20 +- test/Sema/warn-cast-align.c | 2 +- test/Sema/warn-strlcpycat-size.c | 55 + test/Sema/warn-unreachable.c | 20 +- test/Sema/warn-unused-parameters.c | 10 +- test/SemaCUDA/cuda.h | 2 +- test/SemaCUDA/function-target.cu | 44 + test/SemaCUDA/kernel-call.cu | 3 + test/SemaCXX/2008-01-11-BadWarning.cpp | 5 + test/SemaCXX/MicrosoftCompatibility.cpp | 158 + test/SemaCXX/MicrosoftExtensions.cpp | 61 +- test/SemaCXX/PR10243.cpp | 2 +- test/SemaCXX/PR10458.cpp | 7 + test/SemaCXX/PR5086-ambig-resolution-enum.cpp | 2 +- test/SemaCXX/PR7944.cpp | 2 +- test/SemaCXX/PR8012.cpp | 2 +- test/SemaCXX/PR9572.cpp | 2 +- test/SemaCXX/PR9902.cpp | 2 +- test/SemaCXX/PR9908.cpp | 2 +- test/SemaCXX/abstract.cpp | 2 +- test/SemaCXX/address-of.cpp | 11 + test/SemaCXX/aggregate-initialization.cpp | 8 +- test/SemaCXX/alias-template.cpp | 2 +- test/SemaCXX/alignof-sizeof-reference.cpp | 15 +- test/SemaCXX/ambig-user-defined-conversions.cpp | 2 +- test/SemaCXX/ambiguous-builtin-unary-operator.cpp | 2 +- test/SemaCXX/array-bounds-ptr-arith.cpp | 33 + test/SemaCXX/array-bounds.cpp | 80 +- test/SemaCXX/attr-cxx0x.cpp | 14 +- test/SemaCXX/attr-deprecated.cpp | 4 +- test/SemaCXX/auto-cxx0x.cpp | 4 +- test/SemaCXX/auto-cxx98.cpp | 7 +- test/SemaCXX/auto-subst-failure.cpp | 2 +- test/SemaCXX/bool.cpp | 7 +- test/SemaCXX/builtin-ptrtomember-ambig.cpp | 2 +- test/SemaCXX/builtin-ptrtomember-overload-1.cpp | 2 +- test/SemaCXX/builtin-ptrtomember-overload.cpp | 2 +- test/SemaCXX/cast-conversion.cpp | 5 +- test/SemaCXX/class.cpp | 13 +- test/SemaCXX/compare.cpp | 11 + test/SemaCXX/complex-init-list.cpp | 14 + test/SemaCXX/conditional-expr.cpp | 23 +- test/SemaCXX/conversion-delete-expr.cpp | 2 +- test/SemaCXX/convert-to-bool.cpp | 6 +- test/SemaCXX/cxx0x-class.cpp | 28 + test/SemaCXX/cxx0x-compat.cpp | 24 + test/SemaCXX/cxx0x-constexpr-const.cpp | 2 +- test/SemaCXX/cxx0x-cursory-default-delete.cpp | 4 +- test/SemaCXX/cxx0x-defaulted-functions.cpp | 2 +- test/SemaCXX/cxx0x-delegating-ctors.cpp | 2 +- test/SemaCXX/cxx0x-deleted-default-ctor.cpp | 14 +- test/SemaCXX/cxx0x-initializer-scalars.cpp | 34 + test/SemaCXX/cxx0x-nontrivial-union.cpp | 2 +- test/SemaCXX/cxx0x-return-init-list.cpp | 6 +- test/SemaCXX/cxx0x-type-convert-construct.cpp | 21 + test/SemaCXX/cxx98-compat-pedantic.cpp | 11 + test/SemaCXX/cxx98-compat.cpp | 30 + test/SemaCXX/decl-init-ref.cpp | 2 +- test/SemaCXX/decltype-crash.cpp | 2 +- test/SemaCXX/decltype-overloaded-functions.cpp | 14 +- test/SemaCXX/decltype-pr4444.cpp | 2 +- test/SemaCXX/decltype-pr4448.cpp | 2 +- test/SemaCXX/decltype-this.cpp | 2 +- test/SemaCXX/decltype.cpp | 2 +- test/SemaCXX/defaulted-ctor-loop.cpp | 2 +- test/SemaCXX/delete.cpp | 2 +- test/SemaCXX/deleted-function.cpp | 2 +- test/SemaCXX/deleted-operator.cpp | 13 + test/SemaCXX/dependent-auto.cpp | 2 +- test/SemaCXX/dependent-noexcept-unevaluated.cpp | 2 +- test/SemaCXX/dependent-types.cpp | 2 +- test/SemaCXX/destructor.cpp | 2 +- test/SemaCXX/enum-bitfield.cpp | 2 +- test/SemaCXX/enum-scoped.cpp | 2 +- test/SemaCXX/explicit.cpp | 147 +- test/SemaCXX/expression-traits.cpp | 40 +- test/SemaCXX/expressions.cpp | 75 +- test/SemaCXX/for-range-examples.cpp | 2 +- test/SemaCXX/for-range-no-std.cpp | 3 +- test/SemaCXX/for-range-unused.cpp | 2 +- test/SemaCXX/function-overload-typo-crash.cpp | 20 +- test/SemaCXX/function-redecl.cpp | 71 + test/SemaCXX/generalized-initializers.cpp | 23 +- test/SemaCXX/generic-selection.cpp | 2 +- test/SemaCXX/i-c-e-cxx.cpp | 6 + test/SemaCXX/implicit-exception-spec.cpp | 2 +- test/SemaCXX/issue547.cpp | 2 +- test/SemaCXX/libstdcxx_is_pod_hack.cpp | 4 + test/SemaCXX/linkage-spec.cpp | 13 + test/SemaCXX/literal-operators.cpp | 40 +- test/SemaCXX/literal-type.cpp | 2 +- test/SemaCXX/member-expr.cpp | 30 +- test/SemaCXX/member-init.cpp | 20 +- test/SemaCXX/microsoft-cxx0x.cpp | 10 + ...issing-namespace-qualifier-typo-corrections.cpp | 14 +- test/SemaCXX/nested-name-spec.cpp | 10 +- test/SemaCXX/new-array-size-conv.cpp | 4 +- test/SemaCXX/new-delete.cpp | 19 + test/SemaCXX/null_in_arithmetic_ops.cpp | 14 +- test/SemaCXX/nullptr.cpp | 2 +- test/SemaCXX/nullptr_in_arithmetic_ops.cpp | 2 +- test/SemaCXX/out-of-line-def-mismatch.cpp | 24 + test/SemaCXX/overload-0x.cpp | 11 + test/SemaCXX/overload-call.cpp | 9 + test/SemaCXX/overloaded-builtin-operators-0x.cpp | 2 +- test/SemaCXX/overloaded-name.cpp | 17 +- test/SemaCXX/overloaded-operator-decl.cpp | 5 + test/SemaCXX/overloaded-operator.cpp | 6 +- test/SemaCXX/ptrtomember-overload-resolution.cpp | 2 +- test/SemaCXX/ptrtomember.cpp | 18 +- test/SemaCXX/redeclared-alias-template.cpp | 2 +- test/SemaCXX/redeclared-auto.cpp | 2 +- test/SemaCXX/ref-init-ambiguous.cpp | 2 +- test/SemaCXX/references.cpp | 3 + test/SemaCXX/return-noreturn.cpp | 99 +- test/SemaCXX/rval-references-examples.cpp | 2 +- test/SemaCXX/rval-references.cpp | 2 +- test/SemaCXX/scope-check.cpp | 38 +- test/SemaCXX/static-assert.cpp | 2 +- test/SemaCXX/switch-0x.cpp | 2 +- test/SemaCXX/trailing-return-0x.cpp | 2 +- test/SemaCXX/trivial-constructor.cpp | 2 +- test/SemaCXX/trivial-destructor.cpp | 2 +- test/SemaCXX/type-traits.cpp | 36 +- test/SemaCXX/typo-correction.cpp | 31 + test/SemaCXX/underlying_type.cpp | 2 +- test/SemaCXX/uninit-variables-conditional.cpp | 2 +- test/SemaCXX/uninit-variables.cpp | 36 +- test/SemaCXX/uninitialized.cpp | 74 + test/SemaCXX/unknown-anytype.cpp | 11 + test/SemaCXX/unused-functions.cpp | 2 +- test/SemaCXX/user-defined-conversions.cpp | 15 + test/SemaCXX/using-decl-templates.cpp | 17 + test/SemaCXX/value-initialization.cpp | 2 +- test/SemaCXX/vararg-non-pod.cpp | 1 - test/SemaCXX/virtual-override.cpp | 2 +- test/SemaCXX/virtuals.cpp | 2 +- test/SemaCXX/warn-assignment-condition.cpp | 6 + test/SemaCXX/warn-bad-memaccess.cpp | 17 +- test/SemaCXX/warn-bool-conversion.cpp | 12 +- test/SemaCXX/warn-dangling-field.cpp | 37 + test/SemaCXX/warn-literal-conversion.cpp | 18 +- test/SemaCXX/warn-memset-bad-sizeof.cpp | 38 + test/SemaCXX/warn-missing-noreturn.cpp | 34 +- test/SemaCXX/warn-sign-compare.cpp | 72 - test/SemaCXX/warn-sign-conversion.cpp | 80 + test/SemaCXX/warn-string-conversion.cpp | 18 + test/SemaCXX/warn-thread-safety-analysis.cpp | 1422 ++++++ test/SemaCXX/warn-thread-safety-parsing.cpp | 1255 ++++++ test/SemaCXX/warn-unreachable.cpp | 8 +- test/SemaCXX/warn-unused-comparison.cpp | 94 + test/SemaCXX/warn-unused-value.cpp | 15 + test/SemaCXX/warn-weak-vtables.cpp | 27 + test/SemaObjC/arc-bridged-cast.m | 4 +- test/SemaObjC/arc-cf.m | 20 + test/SemaObjC/arc-decls.m | 21 +- test/SemaObjC/arc-jump-block.m | 2 +- test/SemaObjC/arc-no-runtime.m | 2 +- test/SemaObjC/arc-non-pod-memaccess.m | 12 +- test/SemaObjC/arc-nsconsumed-errors.m | 20 + test/SemaObjC/arc-peformselector.m | 2 +- test/SemaObjC/arc-property-decl-attrs.m | 16 +- test/SemaObjC/arc-property-lifetime.m | 21 +- test/SemaObjC/arc-property.m | 2 +- test/SemaObjC/arc-retain-block-property.m | 30 + test/SemaObjC/arc-setter-property-match.m | 35 + test/SemaObjC/arc-system-header.m | 4 +- test/SemaObjC/arc-type-conversion.m | 2 +- test/SemaObjC/arc-unavailable-for-weakref.m | 2 +- test/SemaObjC/arc-unavailable-system-function.m | 13 + test/SemaObjC/arc-unbridged-cast.m | 78 +- test/SemaObjC/arc-unsafe-assigns.m | 2 +- test/SemaObjC/arc-unsafe_unretained.m | 4 +- test/SemaObjC/arc.m | 89 +- test/SemaObjC/assign-rvalue-message.m | 4 +- test/SemaObjC/at-defs.m | 2 +- test/SemaObjC/atomoic-property-synnthesis-rules.m | 24 +- test/SemaObjC/attr-availability.m | 13 + test/SemaObjC/attr-deprecated.m | 15 +- test/SemaObjC/attr-ns-bridged.m | 15 + test/SemaObjC/bad-property-synthesis-crash.m | 23 + test/SemaObjC/blocks.m | 12 +- test/SemaObjC/builtin_objc_assign_ivar.m | 6 + test/SemaObjC/class-bitfield.m | 2 +- test/SemaObjC/class-protocol-method-match.m | 48 + test/SemaObjC/class-unavail-warning.m | 20 +- test/SemaObjC/comptypes-10.m | 18 + test/SemaObjC/comptypes-7.m | 2 +- test/SemaObjC/conflict-atomic-property.m | 10 + test/SemaObjC/conflict-nonfragile-abi2.m | 2 +- test/SemaObjC/conflicting-ivar-test-1.m | 2 +- test/SemaObjC/continuation-class-property.m | 19 + test/SemaObjC/crash-label.m | 11 +- test/SemaObjC/default-synthesize-1.m | 26 +- test/SemaObjC/default-synthesize-2.m | 116 + test/SemaObjC/default-synthesize.m | 8 +- test/SemaObjC/deref-interface.m | 2 +- test/SemaObjC/direct-synthesized-ivar-access.m | 7 +- test/SemaObjC/duplicate-ivar-in-class-extension.m | 2 +- test/SemaObjC/enum-fixed-type.m | 27 + test/SemaObjC/error-property-gc-attr.m | 2 +- test/SemaObjC/iboutletcollection-attr.m | 5 +- test/SemaObjC/id-isa-ref.m | 2 +- test/SemaObjC/incomplete-implementation.m | 9 +- test/SemaObjC/instancetype.m | 190 + test/SemaObjC/interface-1.m | 2 +- test/SemaObjC/interface-layout.m | 2 +- test/SemaObjC/ivar-in-class-extension-error.m | 2 +- test/SemaObjC/ivar-in-class-extension.m | 2 +- test/SemaObjC/ivar-in-implementations.m | 2 +- test/SemaObjC/ivar-sem-check-2.m | 2 +- test/SemaObjC/method-no-context.m | 3 +- test/SemaObjC/missing-atend-metadata.m | 2 +- test/SemaObjC/missing-method-return-type.m | 11 + test/SemaObjC/nested-typedef-decl.m | 21 + test/SemaObjC/objc-buffered-methods.m | 25 + test/SemaObjC/property-and-class-extension.m | 2 +- test/SemaObjC/property-and-ivar-use.m | 2 +- test/SemaObjC/property-category-1.m | 4 +- test/SemaObjC/property-category-2.m | 6 +- test/SemaObjC/property-category-3.m | 2 +- test/SemaObjC/property-category-impl.m | 4 +- test/SemaObjC/property-inherited.m | 4 +- test/SemaObjC/property-nonfragile-abi.m | 2 +- .../property-ns-returns-not-retained-attr.m | 2 +- test/SemaObjC/property.m | 10 +- test/SemaObjC/protocol-archane.m | 7 + .../SemaObjC/protocol-implementing-class-methods.m | 41 + test/SemaObjC/provisional-ivar-lookup.m | 2 +- .../SemaObjC/qualified-protocol-method-conflicts.m | 39 + test/SemaObjC/related-result-type-inference.m | 6 +- test/SemaObjC/return.m | 11 +- test/SemaObjC/self-declared-in-block.m | 4 +- test/SemaObjC/sizeof-interface.m | 2 +- test/SemaObjC/super-class-protocol-conformance.m | 12 +- test/SemaObjC/synth-provisional-ivars-1.m | 2 +- test/SemaObjC/synth-provisional-ivars.m | 12 +- test/SemaObjC/synthesized-ivar.m | 10 +- test/SemaObjC/undeclared-selector.m | 2 +- test/SemaObjC/unimplemented-protocol-prop.m | 29 +- test/SemaObjC/uninit-variables.m | 2 +- test/SemaObjC/warn-deprecated-implementations.m | 3 +- test/SemaObjC/warn-implicit-atomic-property.m | 2 +- test/SemaObjC/warn-missing-super.m | 57 + test/SemaObjC/warn-retain-cycle.m | 4 +- test/SemaObjC/weak-property.m | 2 +- test/SemaObjCXX/arc-0x.mm | 2 +- test/SemaObjCXX/arc-bool-conversion.mm | 2 +- test/SemaObjCXX/arc-bridged-cast.mm | 2 +- test/SemaObjCXX/arc-libcxx.mm | 11 - test/SemaObjCXX/arc-libstdcxx.mm | 2 +- test/SemaObjCXX/arc-memfunc.mm | 2 +- test/SemaObjCXX/arc-non-pod.mm | 2 +- test/SemaObjCXX/arc-nsconsumed-errors.mm | 20 + test/SemaObjCXX/arc-object-init-destroy.mm | 2 +- test/SemaObjCXX/arc-overloading.mm | 29 +- test/SemaObjCXX/arc-system-header.mm | 2 +- test/SemaObjCXX/arc-templates.mm | 16 +- test/SemaObjCXX/arc-type-conversion.mm | 2 +- test/SemaObjCXX/arc-type-traits.mm | 2 +- test/SemaObjCXX/arc-unavailable-for-weakref.mm | 2 +- test/SemaObjCXX/exceptions-fragile.mm | 2 +- test/SemaObjCXX/linkage-spec.mm | 9 + test/SemaObjCXX/message.mm | 2 +- test/SemaObjCXX/nullptr.mm | 2 +- test/SemaObjCXX/propert-dot-error.mm | 17 + test/SemaObjCXX/property-reference.mm | 4 +- test/SemaObjCXX/property-synthesis-error.mm | 44 +- test/SemaObjCXX/unknown-anytype.mm | 8 + test/SemaOpenCL/local.cl | 6 + test/SemaOpenCL/vector_conv_invalid.cl | 14 + test/SemaOpenCL/vector_literals_invalid.cl | 2 +- test/SemaTemplate/alias-church-numerals.cpp | 2 +- test/SemaTemplate/alias-nested-nontag.cpp | 2 +- .../SemaTemplate/alias-template-template-param.cpp | 2 +- test/SemaTemplate/alias-templates.cpp | 2 +- test/SemaTemplate/atomics.cpp | 8 + test/SemaTemplate/attributes.cpp | 13 + test/SemaTemplate/canonical-expr-type-0x.cpp | 2 +- test/SemaTemplate/current-instantiation.cpp | 20 + test/SemaTemplate/default-arguments-cxx0x.cpp | 2 +- test/SemaTemplate/delegating-constructors.cpp | 18 + test/SemaTemplate/dependent-names.cpp | 2 +- test/SemaTemplate/instantiate-array.cpp | 2 +- test/SemaTemplate/instantiate-expr-1.cpp | 13 + test/SemaTemplate/instantiate-expr-4.cpp | 17 + test/SemaTemplate/instantiate-expr-basic.cpp | 2 +- test/SemaTemplate/instantiate-function-2.cpp | 2 +- test/SemaTemplate/instantiate-member-class.cpp | 2 +- test/SemaTemplate/instantiate-static-var.cpp | 2 +- test/SemaTemplate/instantiate-try-catch.cpp | 2 +- test/SemaTemplate/lookup-dependent-bases.cpp | 19 + .../member-inclass-init-value-dependent.cpp | 7 + test/SemaTemplate/missing-class-keyword-crash.cpp | 7 + .../ms-function-specialization-class-scope.cpp | 71 + .../ms-lookup-template-base-classes.cpp | 31 + test/SemaTemplate/nested-template.cpp | 16 + test/SemaTemplate/operator-template.cpp | 10 +- test/SemaTemplate/overload-uneval.cpp | 2 +- test/SemaTemplate/resolve-single-template-id.cpp | 38 +- test/SemaTemplate/temp_arg_nontype.cpp | 64 +- test/SemaTemplate/temp_explicit_cxx0x.cpp | 2 +- test/SemaTemplate/typename-specifier.cpp | 13 + test/SemaTemplate/unresolved-construct.cpp | 2 +- test/lit.cfg | 4 +- tools/CMakeLists.txt | 1 + tools/Makefile | 2 +- tools/arcmt-test/arcmt-test.cpp | 47 +- tools/c-index-test/CMakeLists.txt | 1 + tools/c-index-test/Makefile | 3 - tools/c-index-test/c-index-test.c | 264 +- tools/diagtool/CMakeLists.txt | 24 + tools/diagtool/DiagTool.cpp | 68 + tools/diagtool/DiagTool.h | 70 + tools/diagtool/ListWarnings.cpp | 106 + tools/diagtool/Makefile | 25 + tools/diagtool/diagtool_main.cpp | 26 + tools/driver/Makefile | 9 - tools/driver/cc1_main.cpp | 17 +- tools/driver/cc1as_main.cpp | 94 +- tools/driver/driver.cpp | 71 +- tools/libclang/CIndex.cpp | 1403 +++--- tools/libclang/CIndexCXX.cpp | 11 +- tools/libclang/CIndexCodeCompletion.cpp | 185 +- tools/libclang/CIndexDiagnostic.cpp | 18 +- tools/libclang/CIndexHigh.cpp | 315 ++ tools/libclang/CIndexInclusionStack.cpp | 19 +- tools/libclang/CIndexUSRs.cpp | 106 +- tools/libclang/CIndexer.cpp | 2 +- tools/libclang/CMakeLists.txt | 1 + tools/libclang/CXCursor.cpp | 697 ++- tools/libclang/CXCursor.h | 37 +- tools/libclang/CXString.cpp | 6 +- tools/libclang/CXString.h | 6 +- tools/libclang/CXTranslationUnit.h | 9 + tools/libclang/CXType.cpp | 36 + tools/libclang/Index_Internal.h | 43 + tools/libclang/libclang.darwin.exports | 143 - tools/libclang/libclang.exports | 26 +- tools/scan-build/ccc-analyzer | 29 +- tools/scan-build/scan-build | 4 +- unittests/AST/APValueTest.cpp | 83 + unittests/AST/Makefile | 15 + unittests/Basic/FileManagerTest.cpp | 3 +- unittests/CMakeLists.txt | 5 + unittests/Makefile | 2 +- utils/TableGen/CMakeLists.txt | 12 + utils/TableGen/ClangASTNodesEmitter.cpp | 168 + utils/TableGen/ClangASTNodesEmitter.h | 84 + utils/TableGen/ClangAttrEmitter.cpp | 788 ++++ utils/TableGen/ClangAttrEmitter.h | 114 + utils/TableGen/ClangDiagnosticsEmitter.cpp | 378 ++ utils/TableGen/ClangDiagnosticsEmitter.h | 54 + utils/TableGen/ClangSACheckersEmitter.cpp | 319 ++ utils/TableGen/ClangSACheckersEmitter.h | 31 + utils/TableGen/Makefile | 19 + utils/TableGen/NeonEmitter.cpp | 1551 +++++++ utils/TableGen/NeonEmitter.h | 176 + utils/TableGen/OptParserEmitter.cpp | 194 + utils/TableGen/OptParserEmitter.h | 34 + utils/TableGen/TableGen.cpp | 176 + utils/analyzer/CmpRuns | 230 - utils/analyzer/CmpRuns.py | 246 ++ utils/analyzer/SATestAdd.py | 71 + utils/analyzer/SATestBuild.py | 307 ++ utils/clangVisualizers.txt | 44 + www/OpenProjects.html | 4 +- www/analyzer/latest_checker.html.incl | 2 +- www/analyzer/release_notes.html | 13 + www/comparison.html | 4 +- www/compatibility.html | 40 +- www/cxx_status.html | 977 ++--- www/demo/index.cgi | 2 +- www/diagnostics.html | 33 +- www/get_involved.html | 31 +- www/get_started.html | 2 +- www/hacking.html | 22 + www/index.html | 2 +- www/menu.html.incl | 5 +- 2448 files changed, 107888 insertions(+), 53918 deletions(-) create mode 100644 .gitignore create mode 100644 INPUTS/cfg-nested-var-scopes.cpp delete mode 100644 TODO.txt create mode 100644 bindings/python/tests/cindex/test_location.py create mode 100644 bindings/python/tests/cindex/test_type.py delete mode 100644 clang.xcodeproj/project.pbxproj create mode 100644 examples/analyzer-plugin/CMakeLists.txt create mode 100644 examples/analyzer-plugin/MainCallChecker.cpp create mode 100644 examples/analyzer-plugin/Makefile create mode 100644 include/clang/AST/BaseSubobject.h create mode 100644 include/clang/AST/SelectorLocationsKind.h create mode 100644 include/clang/AST/VTTBuilder.h create mode 100644 include/clang/AST/VTableBuilder.h create mode 100644 include/clang/Analysis/Analyses/ThreadSafety.h create mode 100644 include/clang/Basic/LLVM.h create mode 100644 include/clang/Basic/LangOptions.def delete mode 100644 include/clang/Frontend/ChainedDiagnosticClient.h create mode 100644 include/clang/Frontend/ChainedDiagnosticConsumer.h create mode 100644 include/clang/Frontend/VerifyDiagnosticConsumer.h delete mode 100644 include/clang/Frontend/VerifyDiagnosticsClient.h create mode 100644 include/clang/Lex/ModuleLoader.h create mode 100644 include/clang/Parse/CMakeLists.txt create mode 100644 include/clang/Parse/Makefile create mode 100644 include/clang/Sema/MultiInitializer.h create mode 100644 include/clang/Sema/SemaFixItUtils.h create mode 100644 include/clang/Sema/Weak.h delete mode 100644 include/clang/Serialization/ASTSerializationListener.h create mode 100644 include/clang/Serialization/ContinuousRangeMap.h create mode 100644 include/clang/Serialization/Module.h create mode 100644 include/clang/Serialization/ModuleManager.h create mode 100644 include/clang/StaticAnalyzer/Checkers/ClangCheckers.h create mode 100644 include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitor.h create mode 100644 include/clang/StaticAnalyzer/Core/CheckerOptInfo.h delete mode 100644 include/clang/StaticAnalyzer/Core/CheckerProvider.h create mode 100644 include/clang/StaticAnalyzer/Core/CheckerRegistry.h delete mode 100644 include/clang/StaticAnalyzer/Core/PathDiagnosticClients.h create mode 100644 include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h delete mode 100644 include/clang/StaticAnalyzer/Core/PathSensitive/GRState.h delete mode 100644 include/clang/StaticAnalyzer/Core/PathSensitive/GRStateTrait.h create mode 100644 include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h create mode 100644 include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h delete mode 100644 include/clang/StaticAnalyzer/Core/PathSensitive/TransferFuncs.h create mode 100644 lib/ARCMigrate/PlistReporter.cpp create mode 100644 lib/ARCMigrate/TransAPIUses.cpp create mode 100644 lib/AST/SelectorLocationsKind.cpp create mode 100644 lib/AST/VTTBuilder.cpp create mode 100644 lib/AST/VTableBuilder.cpp create mode 100644 lib/Analysis/ProgramPoint.cpp create mode 100644 lib/Analysis/ThreadSafety.cpp create mode 100644 lib/Basic/LangOptions.cpp create mode 100644 lib/CodeGen/CGCUDANV.cpp create mode 100644 lib/CodeGen/CGCUDARuntime.cpp create mode 100644 lib/CodeGen/CGCUDARuntime.h create mode 100644 lib/CodeGen/CGOpenCLRuntime.cpp create mode 100644 lib/CodeGen/CGOpenCLRuntime.h create mode 100644 lib/Frontend/VerifyDiagnosticConsumer.cpp delete mode 100644 lib/Frontend/VerifyDiagnosticsClient.cpp create mode 100644 lib/Headers/stdalign.h create mode 100644 lib/Sema/MultiInitializer.cpp delete mode 100644 lib/Sema/SemaCXXCast.cpp create mode 100644 lib/Sema/SemaCast.cpp create mode 100644 lib/Sema/SemaFixItUtils.cpp create mode 100644 lib/Serialization/ASTReaderInternals.h create mode 100644 lib/Serialization/Module.cpp create mode 100644 lib/Serialization/ModuleManager.cpp create mode 100644 lib/StaticAnalyzer/Checkers/ClangCheckers.cpp delete mode 100644 lib/StaticAnalyzer/Checkers/ClangSACheckerProvider.cpp delete mode 100644 lib/StaticAnalyzer/Checkers/ClangSACheckerProvider.h create mode 100644 lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp create mode 100644 lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp create mode 100644 lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp delete mode 100644 lib/StaticAnalyzer/Core/BasicStore.cpp delete mode 100644 lib/StaticAnalyzer/Core/CFRefCount.cpp delete mode 100644 lib/StaticAnalyzer/Core/CXXExprEngine.cpp create mode 100644 lib/StaticAnalyzer/Core/Checker.cpp create mode 100644 lib/StaticAnalyzer/Core/CheckerRegistry.cpp create mode 100644 lib/StaticAnalyzer/Core/ExprEngineC.cpp create mode 100644 lib/StaticAnalyzer/Core/ExprEngineCXX.cpp create mode 100644 lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp create mode 100644 lib/StaticAnalyzer/Core/ExprEngineObjC.cpp delete mode 100644 lib/StaticAnalyzer/Core/FlatStore.cpp delete mode 100644 lib/StaticAnalyzer/Core/GRState.cpp create mode 100644 lib/StaticAnalyzer/Core/ProgramState.cpp create mode 100644 runtime/libcxx/Makefile create mode 100644 test/ARCMT/api.m create mode 100644 test/ARCMT/api.m.result create mode 100644 test/ARCMT/check-api.m create mode 100644 test/ARCMT/migrate-emit-errors.m create mode 100644 test/ARCMT/migrate-plist-output.m create mode 100644 test/ARCMT/migrate-space-in-path.m create mode 100644 test/ARCMT/with space/test.h create mode 100644 test/ARCMT/with space/test.h.result create mode 100644 test/ARCMT/with space/test1.m.in create mode 100644 test/ARCMT/with space/test1.m.in.result create mode 100644 test/ARCMT/with space/test2.m.in create mode 100644 test/ARCMT/with space/test2.m.in.result create mode 100644 test/Analysis/analyzeOneFunction.m create mode 100644 test/Analysis/default-diagnostic-visitors.c create mode 100644 test/Analysis/div-zero.cpp delete mode 100644 test/Analysis/flat-store.c create mode 100644 test/Analysis/keychainAPI-diagnostic-visitor.m create mode 100644 test/Analysis/keychainAPI.m create mode 100644 test/Analysis/malloc-overflow.c create mode 100644 test/Analysis/malloc-overflow.cpp delete mode 100644 test/Analysis/misc-ps-basic-store.m delete mode 100644 test/Analysis/misc-ps-flat-store.c create mode 100644 test/Analysis/outofbound-notwork.c create mode 100644 test/Analysis/pthreadlock.c delete mode 100644 test/Analysis/rdar-6541136.c delete mode 100644 test/Analysis/rdar-6582778-basic-store.c delete mode 100644 test/Analysis/retain-release-basic-store.m create mode 100644 test/Analysis/stack-block-returned.cpp create mode 100644 test/CXX/basic/basic.types/p10.cpp create mode 100644 test/CXX/class.access/class.friend/p6.cpp create mode 100644 test/CXX/class/class.bit/p2.cpp create mode 100644 test/CXX/class/class.static/class.static.data/p3.cpp create mode 100644 test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p2.cpp create mode 100644 test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3.cpp create mode 100644 test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p4.cpp create mode 100644 test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p6.cpp create mode 100644 test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p8.cpp create mode 100644 test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p9.cpp create mode 100644 test/CXX/dcl.decl/dcl.init/dcl.init.list/p7-0x-fixits.cpp create mode 100644 test/CXX/dcl.decl/dcl.init/dcl.init.list/p7-0x.cpp create mode 100644 test/CXX/dcl.decl/dcl.init/dcl.init.string/p1.cpp create mode 100644 test/CXX/dcl.decl/dcl.meaning/dcl.fct/dcl.fct.def.default/p2.cpp create mode 100644 test/CXX/lex/lex.literal/lex.ext/p1.cpp create mode 100644 test/CXX/over/over.built/p23.cpp create mode 100644 test/CXX/special/class.copy/implicit-move-def.cpp create mode 100644 test/CXX/special/class.copy/implicit-move.cpp create mode 100644 test/CXX/special/class.copy/p11.0x.copy.cpp create mode 100644 test/CXX/special/class.copy/p11.0x.move.cpp create mode 100644 test/CXX/special/class.copy/p15-0x.cpp create mode 100644 test/CXX/special/class.temporary/p1.cpp create mode 100644 test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.call/p4.cpp create mode 100644 test/CodeGen/2002-01-23-LoadQISIReloadFailure.c create mode 100644 test/CodeGen/2002-01-24-ComplexSpaceInType.c create mode 100644 test/CodeGen/2002-01-24-HandleCallInsnSEGV.c create mode 100644 test/CodeGen/2002-02-13-ConditionalInCall.c create mode 100644 test/CodeGen/2002-02-13-ReloadProblem.c create mode 100644 test/CodeGen/2002-02-13-TypeVarNameCollision.c create mode 100644 test/CodeGen/2002-02-13-UnnamedLocal.c create mode 100644 test/CodeGen/2002-02-14-EntryNodePreds.c create mode 100644 test/CodeGen/2002-02-16-RenamingTest.c create mode 100644 test/CodeGen/2002-02-17-ArgumentAddress.c create mode 100644 test/CodeGen/2002-02-18-64bitConstant.c create mode 100644 test/CodeGen/2002-02-18-StaticData.c create mode 100644 test/CodeGen/2002-03-11-LargeCharInString.c create mode 100644 test/CodeGen/2002-03-12-ArrayInitialization.c create mode 100644 test/CodeGen/2002-03-12-StructInitialize.c create mode 100644 test/CodeGen/2002-03-12-StructInitializer.c create mode 100644 test/CodeGen/2002-03-14-BrokenPHINode.c create mode 100644 test/CodeGen/2002-03-14-BrokenSSA.c create mode 100644 test/CodeGen/2002-03-14-QuotesInStrConst.c create mode 100644 test/CodeGen/2002-04-07-SwitchStmt.c create mode 100644 test/CodeGen/2002-04-08-LocalArray.c create mode 100644 test/CodeGen/2002-04-09-StructRetVal.c create mode 100644 test/CodeGen/2002-04-10-StructParameters.c create mode 100644 test/CodeGen/2002-05-23-StaticValues.c create mode 100644 test/CodeGen/2002-05-23-TypeNameCollision.c create mode 100644 test/CodeGen/2002-05-24-Alloca.c create mode 100644 test/CodeGen/2002-06-25-FWriteInterfaceFailure.c create mode 100644 test/CodeGen/2002-07-14-MiscListTests.c create mode 100644 test/CodeGen/2002-07-14-MiscTests.c create mode 100644 test/CodeGen/2002-07-14-MiscTests2.c create mode 100644 test/CodeGen/2002-07-14-MiscTests3.c create mode 100644 test/CodeGen/2002-07-16-HardStringInit.c create mode 100644 test/CodeGen/2002-07-17-StringConstant.c create mode 100644 test/CodeGen/2002-07-30-SubregSetAssertion.c create mode 100644 test/CodeGen/2002-07-30-UnionTest.c create mode 100644 test/CodeGen/2002-07-30-VarArgsCallFailure.c create mode 100644 test/CodeGen/2002-07-31-BadAssert.c create mode 100644 test/CodeGen/2002-07-31-SubregFailure.c create mode 100644 test/CodeGen/2002-08-02-UnionTest.c create mode 100644 test/CodeGen/2002-08-19-RecursiveLocals.c create mode 100644 test/CodeGen/2002-09-08-PointerShifts.c create mode 100644 test/CodeGen/2002-09-18-UnionProblem.c create mode 100644 test/CodeGen/2002-09-19-StarInLabel.c create mode 100644 test/CodeGen/2002-10-12-TooManyArguments.c create mode 100644 test/CodeGen/2002-12-15-GlobalBoolTest.c create mode 100644 test/CodeGen/2002-12-15-GlobalConstantTest.c create mode 100644 test/CodeGen/2002-12-15-GlobalRedefinition.c create mode 100644 test/CodeGen/2002-12-15-StructParameters.c create mode 100644 test/CodeGen/2003-01-30-UnionInit.c create mode 100644 test/CodeGen/2003-03-03-DeferredType.c create mode 100644 test/CodeGen/2003-06-22-UnionCrash.c create mode 100644 test/CodeGen/2003-06-23-GCC-fold-infinite-recursion.c create mode 100644 test/CodeGen/2003-06-26-CFECrash.c create mode 100644 test/CodeGen/2003-06-29-MultipleFunctionDefinition.c create mode 100644 test/CodeGen/2003-07-22-ArrayAccessTypeSafety.c create mode 100644 test/CodeGen/2003-08-06-BuiltinSetjmpLongjmp.c create mode 100644 test/CodeGen/2003-08-17-DeadCodeShortCircuit.c create mode 100644 test/CodeGen/2003-08-18-SigSetJmp.c create mode 100644 test/CodeGen/2003-08-18-StructAsValue.c create mode 100644 test/CodeGen/2003-08-20-BadBitfieldRef.c create mode 100644 test/CodeGen/2003-08-20-PrototypeMismatch.c create mode 100644 test/CodeGen/2003-08-20-vfork-bug.c create mode 100644 test/CodeGen/2003-08-21-BinOp-Type-Mismatch.c create mode 100644 test/CodeGen/2003-08-21-StmtExpr.c create mode 100644 test/CodeGen/2003-08-21-WideString.c create mode 100644 test/CodeGen/2003-08-23-LocalUnionTest.c create mode 100644 test/CodeGen/2003-08-29-BitFieldStruct.c create mode 100644 test/CodeGen/2003-08-29-HugeCharConst.c create mode 100644 test/CodeGen/2003-08-29-StructLayoutBug.c create mode 100644 test/CodeGen/2003-08-30-AggregateInitializer.c create mode 100644 test/CodeGen/2003-08-30-LargeIntegerBitfieldMember.c create mode 100644 test/CodeGen/2003-09-18-BitfieldTests.c create mode 100644 test/CodeGen/2003-09-30-StructLayout.c create mode 100644 test/CodeGen/2003-10-02-UnionLValueError.c create mode 100644 test/CodeGen/2003-10-06-NegateExprType.c create mode 100644 test/CodeGen/2003-10-09-UnionInitializerBug.c create mode 100644 test/CodeGen/2003-10-28-ident.c create mode 100644 test/CodeGen/2003-10-29-AsmRename.c create mode 100644 test/CodeGen/2003-11-01-C99-CompoundLiteral.c create mode 100644 test/CodeGen/2003-11-01-EmptyStructCrash.c create mode 100644 test/CodeGen/2003-11-01-GlobalUnionInit.c create mode 100644 test/CodeGen/2003-11-03-AddrArrayElement.c create mode 100644 test/CodeGen/2003-11-04-EmptyStruct.c create mode 100644 test/CodeGen/2003-11-04-OutOfMemory.c create mode 100644 test/CodeGen/2003-11-08-PointerSubNotGetelementptr.c create mode 100644 test/CodeGen/2003-11-12-VoidString.c create mode 100644 test/CodeGen/2003-11-13-TypeSafety.c create mode 100644 test/CodeGen/2003-11-16-StaticArrayInit.c create mode 100644 test/CodeGen/2003-11-18-CondExprLValue.c create mode 100644 test/CodeGen/2003-11-19-AddressOfRegister.c create mode 100644 test/CodeGen/2003-11-19-BitFieldArray.c create mode 100644 test/CodeGen/2003-11-20-Bitfields.c create mode 100644 test/CodeGen/2003-11-20-ComplexDivision.c create mode 100644 test/CodeGen/2003-11-20-UnionBitfield.c create mode 100644 test/CodeGen/2003-11-26-PointerShift.c create mode 100644 test/CodeGen/2003-11-27-ConstructorCast.c create mode 100644 test/CodeGen/2003-11-27-UnionCtorInitialization.c create mode 100644 test/CodeGen/2003-12-14-ExternInlineSupport.c create mode 100644 test/CodeGen/2004-01-01-UnknownInitSize.c create mode 100644 test/CodeGen/2004-01-08-ExternInlineRedefine.c create mode 100644 test/CodeGen/2004-02-12-LargeAggregateCopy.c create mode 100644 test/CodeGen/2004-02-13-BuiltinFrameReturnAddress.c create mode 100644 test/CodeGen/2004-02-13-IllegalVararg.c create mode 100644 test/CodeGen/2004-02-13-Memset.c create mode 100644 test/CodeGen/2004-02-14-ZeroInitializer.c create mode 100644 test/CodeGen/2004-02-20-Builtins.c create mode 100644 test/CodeGen/2004-03-07-ComplexDivEquals.c create mode 100644 test/CodeGen/2004-03-07-ExternalConstant.c create mode 100644 test/CodeGen/2004-03-09-LargeArrayInitializers.c create mode 100644 test/CodeGen/2004-03-15-SimpleIndirectGoto.c create mode 100644 test/CodeGen/2004-03-16-AsmRegisterCrash.c create mode 100644 test/CodeGen/2004-05-07-VarArrays.c create mode 100644 test/CodeGen/2004-05-21-IncompleteEnum.c create mode 100644 test/CodeGen/2004-06-08-OpaqueStructArg.c create mode 100644 test/CodeGen/2004-06-17-UnorderedBuiltins.c create mode 100644 test/CodeGen/2004-06-17-UnorderedCompares.c create mode 100644 test/CodeGen/2004-06-18-VariableLengthArrayOfStructures.c create mode 100644 test/CodeGen/2004-07-06-FunctionCast.c create mode 100644 test/CodeGen/2004-08-06-LargeStructTest.c create mode 100644 test/CodeGen/2004-11-25-UnnamedBitfieldPadding.c create mode 100644 test/CodeGen/2004-11-27-InvalidConstantExpr.c create mode 100644 test/CodeGen/2004-11-27-StaticFunctionRedeclare.c create mode 100644 test/CodeGen/2005-01-02-ConstantInits.c create mode 100644 test/CodeGen/2005-01-02-PointerDifference.c create mode 100644 test/CodeGen/2005-01-02-VAArgError-ICE.c create mode 100644 test/CodeGen/2005-02-20-AggregateSAVEEXPR.c create mode 100644 test/CodeGen/2005-02-27-MarkGlobalConstant.c create mode 100644 test/CodeGen/2005-03-05-OffsetOfHack.c create mode 100644 test/CodeGen/2005-03-06-OffsetOfStructCrash.c create mode 100644 test/CodeGen/2005-03-11-Prefetch.c create mode 100644 test/CodeGen/2005-04-09-ComplexOps.c create mode 100644 test/CodeGen/2005-05-06-CountBuiltins.c create mode 100644 test/CodeGen/2005-05-10-GlobalUnionInit.c create mode 100644 test/CodeGen/2005-06-15-ExpandGotoInternalProblem.c create mode 100644 test/CodeGen/2005-07-20-SqrtNoErrno.c create mode 100644 test/CodeGen/2005-07-26-UnionInitCrash.c create mode 100644 test/CodeGen/2005-07-28-IncorrectWeakGlobal.c create mode 100644 test/CodeGen/2005-09-20-ComplexConstants.c create mode 100644 test/CodeGen/2005-09-24-AsmUserPrefix.c create mode 100644 test/CodeGen/2005-09-24-BitFieldCrash.c create mode 100644 test/CodeGen/2005-12-04-AttributeUsed.c create mode 100644 test/CodeGen/2005-12-04-DeclarationLineNumbers.c create mode 100644 test/CodeGen/2006-01-13-Includes.c create mode 100644 test/CodeGen/2006-01-13-StackSave.c create mode 100644 test/CodeGen/2006-01-16-BitCountIntrinsicsUnsigned.c create mode 100644 test/CodeGen/2006-01-23-FileScopeAsm.c create mode 100644 test/CodeGen/2006-03-03-MissingInitializer.c create mode 100644 test/CodeGen/2006-03-16-VectorCtor.c create mode 100644 test/CodeGen/2006-03-17-KnRMismatch.c create mode 100644 test/CodeGen/2006-05-19-SingleEltReturn.c create mode 100644 test/CodeGen/2006-07-31-PR854.c create mode 100644 test/CodeGen/2006-09-11-BitfieldRefCrash.c create mode 100644 test/CodeGen/2006-09-18-fwrite-cast-crash.c create mode 100644 test/CodeGen/2006-09-21-IncompleteElementType.c create mode 100644 test/CodeGen/2006-09-25-DebugFilename.c create mode 100644 test/CodeGen/2006-09-25-DebugFilename.h create mode 100644 test/CodeGen/2006-09-28-SimpleAsm.c create mode 100644 test/CodeGen/2006-10-30-ArrayCrash.c create mode 100644 test/CodeGen/2006-12-14-ordered_expr.c create mode 100644 test/CodeGen/2007-01-06-KNR-Proto.c create mode 100644 test/CodeGen/2007-01-20-VectorICE.c create mode 100644 test/CodeGen/2007-01-24-InlineAsmCModifier.c create mode 100644 test/CodeGen/2007-02-04-AddrLValue-2.c create mode 100644 test/CodeGen/2007-02-04-AddrLValue.c create mode 100644 test/CodeGen/2007-02-04-EmptyStruct.c create mode 100644 test/CodeGen/2007-02-07-AddrLabel.c create mode 100644 test/CodeGen/2007-02-16-VoidPtrDiff.c create mode 100644 test/CodeGen/2007-02-25-C-DotDotDot.c create mode 100644 test/CodeGen/2007-03-01-VarSizeArrayIdx.c create mode 100644 test/CodeGen/2007-03-05-DataLayout.c create mode 100644 test/CodeGen/2007-03-26-BitfieldAfterZeroWidth.c create mode 100644 test/CodeGen/2007-03-26-ZeroWidthBitfield.c create mode 100644 test/CodeGen/2007-03-27-VarLengthArray.c create mode 100644 test/CodeGen/2007-04-05-PackedBitFields-2.c create mode 100644 test/CodeGen/2007-04-05-PackedBitFields.c create mode 100644 test/CodeGen/2007-04-05-PackedStruct.c create mode 100644 test/CodeGen/2007-04-05-PadBeforeZeroLengthField.c create mode 100644 test/CodeGen/2007-04-05-UnPackedStruct.c create mode 100644 test/CodeGen/2007-04-11-InlineAsmStruct.c create mode 100644 test/CodeGen/2007-04-11-InlineAsmUnion.c create mode 100644 test/CodeGen/2007-04-11-PR1321.c create mode 100644 test/CodeGen/2007-04-13-InlineAsmStruct2.c create mode 100644 test/CodeGen/2007-04-13-InlineAsmUnion2.c create mode 100644 test/CodeGen/2007-04-14-FNoBuiltin.c create mode 100644 test/CodeGen/2007-04-17-ZeroSizeBitFields.c create mode 100644 test/CodeGen/2007-04-24-VolatileStructCopy.c create mode 100644 test/CodeGen/2007-04-24-bit-not-expr.c create mode 100644 test/CodeGen/2007-04-24-str-const.c create mode 100644 test/CodeGen/2007-05-07-PaddingElements.c create mode 100644 test/CodeGen/2007-05-08-PCH.c create mode 100644 test/CodeGen/2007-05-11-str-const.c create mode 100644 test/CodeGen/2007-05-15-PaddingElement.c create mode 100644 test/CodeGen/2007-05-16-EmptyStruct.c create mode 100644 test/CodeGen/2007-05-29-UnionCopy.c create mode 100644 test/CodeGen/2007-06-05-NoInlineAttribute.c create mode 100644 test/CodeGen/2007-06-15-AnnotateAttribute.c create mode 100644 test/CodeGen/2007-06-18-SextAttrAggregate.c create mode 100644 test/CodeGen/2007-07-29-RestrictPtrArg.c create mode 100644 test/CodeGen/2007-08-01-LoadStoreAlign.c create mode 100644 test/CodeGen/2007-08-21-ComplexCst.c create mode 100644 test/CodeGen/2007-08-22-CTTZ.c create mode 100644 test/CodeGen/2007-09-05-ConstCtor.c create mode 100644 test/CodeGen/2007-09-12-PragmaPack.c create mode 100644 test/CodeGen/2007-09-14-NegatePointer.c create mode 100644 test/CodeGen/2007-09-17-WeakRef.c create mode 100644 test/CodeGen/2007-09-26-Alignment.c create mode 100644 test/CodeGen/2007-09-27-ComplexIntCompare.c create mode 100644 test/CodeGen/2007-09-28-PackedUnionMember.c create mode 100644 test/CodeGen/2007-10-02-VolatileArray.c create mode 100644 test/CodeGen/2007-10-15-VoidPtr.c create mode 100644 test/CodeGen/2007-10-30-Volatile.c create mode 100644 test/CodeGen/2007-11-07-AlignedMemcpy.c create mode 100644 test/CodeGen/2007-11-07-CopyAggregateAlign.c create mode 100644 test/CodeGen/2007-11-07-ZeroAggregateAlign.c create mode 100644 test/CodeGen/2007-11-28-GlobalInitializer.c create mode 100644 test/CodeGen/2007-12-16-AsmNoUnwind.c create mode 100644 test/CodeGen/2008-01-04-WideBitfield.c create mode 100644 test/CodeGen/2008-01-07-UnusualIntSize.c create mode 100644 test/CodeGen/2008-01-11-ChainConsistency.c create mode 100644 test/CodeGen/2008-01-21-PackedBitFields.c create mode 100644 test/CodeGen/2008-01-21-PackedStructField.c create mode 100644 test/CodeGen/2008-01-24-StructAlignAndBitFields.c create mode 100644 test/CodeGen/2008-01-25-ByValReadNone.c create mode 100644 test/CodeGen/2008-01-25-ZeroSizedAggregate.c create mode 100644 test/CodeGen/2008-01-28-PragmaMark.c create mode 100644 test/CodeGen/2008-01-28-UnionSize.c create mode 100644 test/CodeGen/2008-03-03-CtorAttrType.c create mode 100644 test/CodeGen/2008-03-05-syncPtr.c create mode 100644 test/CodeGen/2008-03-24-BitField-And-Alloca.c create mode 100644 test/CodeGen/2008-03-26-PackedBitFields.c create mode 100644 test/CodeGen/2008-04-08-NoExceptions.c create mode 100644 test/CodeGen/2008-05-06-CFECrash.c create mode 100644 test/CodeGen/2008-05-12-TempUsedBeforeDef.c create mode 100644 test/CodeGen/2008-05-19-AlwaysInline.c create mode 100644 test/CodeGen/2008-08-07-AlignPadding1.c create mode 100644 test/CodeGen/2008-08-07-AlignPadding2.c create mode 100644 test/CodeGen/2008-08-07-GEPIntToPtr.c create mode 100644 test/CodeGen/2008-09-03-WeakAlias.c create mode 100644 test/CodeGen/2008-10-13-FrontendCrash.c create mode 100644 test/CodeGen/2008-10-30-ZeroPlacement.c create mode 100644 test/CodeGen/2008-11-02-WeakAlias.c create mode 100644 test/CodeGen/2008-11-08-InstCombineSelect.c create mode 100644 test/CodeGen/2008-12-23-AsmIntPointerTie.c create mode 100644 test/CodeGen/2009-01-05-BlockInlining.c create mode 100644 test/CodeGen/2009-01-21-InvalidIterator.c create mode 100644 test/CodeGen/2009-02-13-zerosize-union-field-ppc.c create mode 100644 test/CodeGen/2009-02-13-zerosize-union-field.c create mode 100644 test/CodeGen/2009-03-01-MallocNoAlias.c create mode 100644 test/CodeGen/2009-03-08-ZeroEltStructCrash.c create mode 100644 test/CodeGen/2009-03-13-dbg.c create mode 100644 test/CodeGen/2009-04-28-UnionArrayCrash.c create mode 100644 test/CodeGen/2009-05-04-EnumInreg.c create mode 100644 test/CodeGen/2009-06-14-HighlyAligned.c create mode 100644 test/CodeGen/2009-06-18-StaticInitTailPadPack.c create mode 100644 test/CodeGen/2009-07-14-VoidPtr.c create mode 100644 test/CodeGen/2009-07-15-pad-wchar_t-array.c create mode 100644 test/CodeGen/2009-07-22-StructLayout.c create mode 100644 test/CodeGen/2009-09-24-SqrtErrno.c create mode 100644 test/CodeGen/2009-12-07-BitFieldAlignment.c create mode 100644 test/CodeGen/2010-01-13-MemBarrier.c create mode 100644 test/CodeGen/2010-01-14-FnType-DebugInfo.c create mode 100644 test/CodeGen/2010-01-18-Inlined-Debug.c create mode 100644 test/CodeGen/2010-02-10-PointerName.c create mode 100644 test/CodeGen/2010-02-15-DbgStaticVar.c create mode 100644 test/CodeGen/2010-03-5-LexicalScope.c create mode 100644 test/CodeGen/2010-05-26-AsmSideEffect.c create mode 100644 test/CodeGen/2010-06-11-SaveExpr.c create mode 100644 test/CodeGen/2010-06-17-asmcrash.c create mode 100644 test/CodeGen/2010-07-08-DeclDebugLineNo.c create mode 100644 test/CodeGen/2010-07-14-overconservative-align.c create mode 100644 test/CodeGen/2010-07-14-ref-off-end.c create mode 100644 test/CodeGen/2010-08-12-asm-aggr-arg.c create mode 100644 test/CodeGen/2010-12-01-CommonGlobal.c create mode 100644 test/CodeGen/2011-02-21-DATA-common.c create mode 100644 test/CodeGen/2011-03-02-UnionInitializer.c create mode 100644 test/CodeGen/2011-03-08-ZeroFieldUnionInitializer.c create mode 100644 test/CodeGen/2011-03-31-ArrayRefFolding.c create mode 100644 test/CodeGen/Atomics.c create mode 100644 test/CodeGen/BasicInstrs.c create mode 100644 test/CodeGen/always-inline.c delete mode 100644 test/CodeGen/annotate.c create mode 100644 test/CodeGen/annotations-builtin.c create mode 100644 test/CodeGen/annotations-field.c create mode 100644 test/CodeGen/annotations-global.c create mode 100644 test/CodeGen/annotations-loc.c create mode 100644 test/CodeGen/annotations-var.c create mode 100644 test/CodeGen/arm-aapcs-vfp.c create mode 100644 test/CodeGen/arm-apcs-zerolength-bitfield.c create mode 100644 test/CodeGen/arm-inline-asm.c create mode 100644 test/CodeGen/arm-vaarg-align.c create mode 100644 test/CodeGen/arrayderef.c create mode 100644 test/CodeGen/asm-reg-var-local.c create mode 100644 test/CodeGen/atomic-ops.c create mode 100644 test/CodeGen/attribute_constructor.c create mode 100644 test/CodeGen/avx-shuffle-builtins.c create mode 100644 test/CodeGen/block-3.c create mode 100644 test/CodeGen/block-copy.c delete mode 100644 test/CodeGen/block-decl-merging.c create mode 100644 test/CodeGen/capture-complex-expr-in-block.c create mode 100644 test/CodeGen/complex-init-list.c create mode 100644 test/CodeGen/debug-dead-local-var.c create mode 100644 test/CodeGen/debug-info-line3.c create mode 100644 test/CodeGen/exact-div-expr.c create mode 100644 test/CodeGen/extern-weak.c create mode 100644 test/CodeGen/fp16-ops.c create mode 100644 test/CodeGen/func-aligned.c create mode 100644 test/CodeGen/funccall.c create mode 100644 test/CodeGen/hidden-visibility.c create mode 100644 test/CodeGen/implicit-arg.c create mode 100644 test/CodeGen/inline-asm-mrv.c create mode 100644 test/CodeGen/kr-call.c create mode 100644 test/CodeGen/libcalls-d.c create mode 100644 test/CodeGen/libcalls-ld.c create mode 100644 test/CodeGen/misaligned-param.c create mode 100644 test/CodeGen/pr2394.c create mode 100644 test/CodeGen/pr3518.c create mode 100644 test/CodeGen/pr4349.c create mode 100644 test/CodeGen/pr5406.c create mode 100644 test/CodeGen/redef-ext-inline.c create mode 100644 test/CodeGen/sret.c create mode 100644 test/CodeGen/sret2.c create mode 100644 test/CodeGen/sse-builtins.c create mode 100644 test/CodeGen/struct-matching-constraint.c create mode 100644 test/CodeGen/unaligned-memcpy.c create mode 100644 test/CodeGen/union-align.c create mode 100644 test/CodeGen/vla-2.c create mode 100644 test/CodeGen/vla-3.c create mode 100644 test/CodeGen/wchar-const.c create mode 100644 test/CodeGen/weak_constant.c create mode 100644 test/CodeGenCUDA/device-stub.cu create mode 100644 test/CodeGenCUDA/filter-decl.cu create mode 100644 test/CodeGenCUDA/kernel-call.cu create mode 100644 test/CodeGenCUDA/ptx-kernels.cu create mode 100644 test/CodeGenCXX/2003-11-02-WeakLinkage.cpp create mode 100644 test/CodeGenCXX/2003-11-18-PtrMemConstantInitializer.cpp create mode 100644 test/CodeGenCXX/2003-11-27-MultipleInheritanceThunk.cpp create mode 100644 test/CodeGenCXX/2003-11-29-DuplicatedCleanupTest.cpp create mode 100644 test/CodeGenCXX/2003-12-08-ArrayOfPtrToMemberFunc.cpp create mode 100644 test/CodeGenCXX/2004-01-11-DynamicInitializedConstant.cpp create mode 100644 test/CodeGenCXX/2004-03-08-ReinterpretCastCopy.cpp create mode 100644 test/CodeGenCXX/2004-03-09-UnmangledBuiltinMethods.cpp create mode 100644 test/CodeGenCXX/2004-03-15-CleanupsAndGotos.cpp create mode 100644 test/CodeGenCXX/2004-06-08-LateTemplateInstantiation.cpp create mode 100644 test/CodeGenCXX/2004-09-27-DidntEmitTemplate.cpp create mode 100644 test/CodeGenCXX/2004-11-27-ExceptionCleanupAssertion.cpp create mode 100644 test/CodeGenCXX/2004-11-27-FriendDefaultArgCrash.cpp create mode 100644 test/CodeGenCXX/2005-01-03-StaticInitializers.cpp create mode 100644 test/CodeGenCXX/2005-02-11-AnonymousUnion.cpp create mode 100644 test/CodeGenCXX/2005-02-13-BadDynamicInit.cpp create mode 100644 test/CodeGenCXX/2005-02-14-BitFieldOffset.cpp create mode 100644 test/CodeGenCXX/2005-02-19-BitfieldStructCrash.cpp create mode 100644 test/CodeGenCXX/2005-02-19-UnnamedVirtualThunkArgument.cpp create mode 100644 test/CodeGenCXX/2005-02-20-BrokenReferenceTest.cpp create mode 100644 test/CodeGenCXX/2006-03-01-GimplifyCrash.cpp create mode 100644 test/CodeGenCXX/2006-03-06-C++RecurseCrash.cpp create mode 100644 test/CodeGenCXX/2006-09-12-OpaqueStructCrash.cpp create mode 100644 test/CodeGenCXX/2006-10-30-ClassBitfield.cpp create mode 100644 test/CodeGenCXX/2006-11-20-GlobalSymbols.cpp create mode 100644 test/CodeGenCXX/2006-11-30-ConstantExprCrash.cpp create mode 100644 test/CodeGenCXX/2007-01-02-UnboundedArray.cpp create mode 100644 test/CodeGenCXX/2007-01-06-PtrMethodInit.cpp create mode 100644 test/CodeGenCXX/2007-04-05-PackedBitFields-1.cpp create mode 100644 test/CodeGenCXX/2007-04-05-PackedBitFieldsOverlap-2.cpp create mode 100644 test/CodeGenCXX/2007-04-05-PackedBitFieldsOverlap.cpp create mode 100644 test/CodeGenCXX/2007-04-05-PackedBitFieldsSmall.cpp create mode 100644 test/CodeGenCXX/2007-04-05-StructPackedFieldUnpacked.cpp create mode 100644 test/CodeGenCXX/2007-04-10-PackedUnion.cpp create mode 100644 test/CodeGenCXX/2007-04-14-FNoBuiltin.cpp create mode 100644 test/CodeGenCXX/2007-05-03-VectorInit.cpp create mode 100644 test/CodeGenCXX/2007-07-29-RestrictPtrArg.cpp create mode 100644 test/CodeGenCXX/2007-07-29-RestrictRefArg.cpp create mode 100644 test/CodeGenCXX/2007-09-10-RecursiveTypeResolution.cpp create mode 100644 test/CodeGenCXX/2007-10-01-StructResize.cpp create mode 100644 test/CodeGenCXX/2008-01-12-VecInit.cpp create mode 100644 test/CodeGenCXX/2008-05-07-CrazyOffsetOf.cpp create mode 100644 test/CodeGenCXX/2009-03-17-dbg.cpp create mode 100644 test/CodeGenCXX/2009-04-23-bool2.cpp create mode 100644 test/CodeGenCXX/2009-05-04-PureConstNounwind.cpp create mode 100644 test/CodeGenCXX/2009-06-16-DebugInfoCrash.cpp create mode 100644 test/CodeGenCXX/2009-07-16-Using.cpp create mode 100644 test/CodeGenCXX/2009-08-05-ZeroInitWidth.cpp create mode 100644 test/CodeGenCXX/2009-08-11-VectorRetTy.cpp create mode 100644 test/CodeGenCXX/2009-09-09-packed-layout.cpp create mode 100644 test/CodeGenCXX/2009-10-27-crash.cpp create mode 100644 test/CodeGenCXX/2009-12-23-MissingSext.cpp create mode 100644 test/CodeGenCXX/2010-05-10-Var-DbgInfo.cpp create mode 100644 test/CodeGenCXX/2010-05-11-alwaysinlineinstantiation.cpp create mode 100644 test/CodeGenCXX/2010-05-12-PtrToMember-Dbg.cpp create mode 100644 test/CodeGenCXX/2010-06-21-LocalVarDbg.cpp create mode 100644 test/CodeGenCXX/2010-06-22-BitfieldInit.cpp create mode 100644 test/CodeGenCXX/2010-06-22-ZeroBitfield.cpp create mode 100644 test/CodeGenCXX/2010-07-23-DeclLoc.cpp create mode 100644 test/CodeGenCXX/copy-assign-volatile-synthesis.cpp create mode 100644 test/CodeGenCXX/cxx0x-initializer-scalars.cpp create mode 100644 test/CodeGenCXX/debug-info-char16.cpp create mode 100644 test/CodeGenCXX/debug-info-nullptr.cpp create mode 100644 test/CodeGenCXX/debug-info-wchar.cpp create mode 100644 test/CodeGenCXX/fp16-mangle.cpp create mode 100644 test/CodeGenCXX/fp16-overload.cpp create mode 100644 test/CodeGenCXX/incomplete-types.cpp delete mode 100644 test/CodeGenCXX/init-incomplete-type.cpp create mode 100644 test/CodeGenCXX/m64-ptr.cpp create mode 100644 test/CodeGenCXX/member-alignment.cpp create mode 100644 test/CodeGenCXX/member-init-anon-union.cpp create mode 100644 test/CodeGenCXX/sizeof-unwind-exception.cpp create mode 100644 test/CodeGenCXX/thunk-linkonce-odr.cpp create mode 100644 test/CodeGenCXX/union-dtor.cpp create mode 100644 test/CodeGenCXX/varargs.cpp create mode 100644 test/CodeGenCXX/weak-external.cpp create mode 100644 test/CodeGenCXX/x86-64-abi-sret-vs-2word-struct-param.cpp create mode 100644 test/CodeGenObjC/2007-04-03-ObjcEH.m create mode 100644 test/CodeGenObjC/2007-05-02-Strong.m create mode 100644 test/CodeGenObjC/2007-10-18-ProDescriptor.m create mode 100644 test/CodeGenObjC/2007-10-23-GC-WriteBarrier.m create mode 100644 test/CodeGenObjC/2008-10-3-EhValue.m create mode 100644 test/CodeGenObjC/2008-11-12-Metadata.m create mode 100644 test/CodeGenObjC/2008-11-24-ConstCFStrings.m create mode 100644 test/CodeGenObjC/2008-11-25-Blocks.m create mode 100644 test/CodeGenObjC/2009-01-26-WriteBarrier-2.m create mode 100644 test/CodeGenObjC/2009-02-05-VolatileProp.m create mode 100644 test/CodeGenObjC/2009-08-05-utf16.m create mode 100644 test/CodeGenObjC/2010-02-01-utf16-with-null.m create mode 100644 test/CodeGenObjC/2010-02-23-DbgInheritance.m create mode 100644 test/CodeGenObjC/2010-03-17-StructRef.m create mode 100644 test/CodeGenObjC/2011-03-08-IVarLookup.m create mode 100644 test/CodeGenObjC/arc-block-copy-escape.m create mode 100644 test/CodeGenObjC/arc-with-atthrow.m create mode 100644 test/CodeGenObjC/builtins.m create mode 100644 test/CodeGenObjC/debug-info-crash-2.m delete mode 100644 test/CodeGenObjC/debug-info-fnname.m create mode 100644 test/CodeGenObjC/debug-info-property2.m create mode 100644 test/CodeGenObjC/gc-weak-attribute.m create mode 100644 test/CodeGenObjC/objc2-strong-cast-block-import.m delete mode 100644 test/CodeGenObjC/property-aggr-type.m create mode 100644 test/CodeGenObjC/property-aggregate.m create mode 100644 test/CodeGenObjCXX/2007-10-03-MetadataPointers.mm create mode 100644 test/CodeGenObjCXX/2010-08-04-Template.mm create mode 100644 test/CodeGenObjCXX/2010-08-06-X.Y-syntax.mm create mode 100644 test/CodeGenObjCXX/arc-returns-inner-reference-ptr.mm create mode 100644 test/CodeGenObjCXX/nrvo.mm create mode 100644 test/CodeGenObjCXX/property-object-reference.mm create mode 100644 test/CodeGenOpenCL/local.cl create mode 100644 test/CodeGenOpenCL/ptx-calls.cl create mode 100644 test/CodeGenOpenCL/ptx-kernels.cl create mode 100644 test/Driver/Inputs/basic_linux_tree/lib/.keep create mode 100644 test/Driver/Inputs/basic_linux_tree/usr/i386-unknown-linux/lib/.keep create mode 100644 test/Driver/Inputs/basic_linux_tree/usr/lib/.keep create mode 100644 test/Driver/Inputs/basic_linux_tree/usr/lib/gcc/i386-unknown-linux/4.6.0/crtbegin.o create mode 100644 test/Driver/Inputs/basic_linux_tree/usr/lib/gcc/x86_64-unknown-linux/4.6.0/crtbegin.o create mode 100644 test/Driver/Inputs/basic_linux_tree/usr/x86_64-unknown-linux/lib/.keep create mode 100644 test/Driver/Inputs/fake_install_tree/bin/.keep create mode 100644 test/Driver/Inputs/fake_install_tree/lib/gcc/i386-unknown-linux/4.7.0/crtbegin.o create mode 100644 test/Driver/Inputs/fake_install_tree/lib/gcc/x86_64-unknown-linux/4.5.0/crtbegin.o create mode 100644 test/Driver/Inputs/gcc_version_parsing1/bin/.keep create mode 100644 test/Driver/Inputs/gcc_version_parsing1/lib/gcc/i386-unknown-linux/4.7/crtbegin.o create mode 100644 test/Driver/Inputs/gcc_version_parsing2/bin/.keep create mode 100644 test/Driver/Inputs/gcc_version_parsing2/lib/gcc/i386-unknown-linux/4.7.x/crtbegin.o create mode 100644 test/Driver/Inputs/gcc_version_parsing3/bin/.keep create mode 100644 test/Driver/Inputs/gcc_version_parsing3/lib/gcc/i386-unknown-linux/4.7.99-rc5/crtbegin.o create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/lib/.keep create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/lib32/.keep create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/lib64/.keep create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/usr/i386-unknown-linux/lib/.keep create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/usr/i386-unknown-linux/lib32/.keep create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/usr/i386-unknown-linux/lib64/.keep create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/usr/lib/.keep create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/usr/lib/gcc/i386-unknown-linux/4.6.0/64/crtbegin.o create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/usr/lib/gcc/i386-unknown-linux/4.6.0/crtbegin.o create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/usr/lib32/.keep create mode 100644 test/Driver/Inputs/multilib_32bit_linux_tree/usr/lib64/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/lib/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/lib32/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/lib64/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/usr/lib/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/usr/lib/gcc/x86_64-unknown-linux/4.6.0/32/crtbegin.o create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/usr/lib/gcc/x86_64-unknown-linux/4.6.0/crtbegin.o create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/usr/lib32/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/usr/lib64/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/usr/x86_64-unknown-linux/lib/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/usr/x86_64-unknown-linux/lib32/.keep create mode 100644 test/Driver/Inputs/multilib_64bit_linux_tree/usr/x86_64-unknown-linux/lib64/.keep create mode 100644 test/Driver/ccc-host-triple-no-integrated-as.c create mode 100644 test/Driver/cpath.c create mode 100644 test/Driver/darwin-verify-debug.c create mode 100644 test/Driver/index-header-map.c create mode 100644 test/Driver/le32-unknown-nacl.cpp create mode 100644 test/Driver/linux-ld.c create mode 100644 test/Driver/mno-global-merge.c create mode 100644 test/Driver/nostdlibinc.c create mode 100644 test/Driver/objc++-cpp-output.mm create mode 100644 test/Driver/objc-cpp-output.m create mode 100644 test/Driver/std.cpp create mode 100644 test/FixIt/dereference-addressof.c create mode 100644 test/FixIt/fixit-function-call.cpp create mode 100644 test/FixIt/fixit-missing-method-return-type.m create mode 100644 test/FixIt/fixit-static-object-decl.m create mode 100644 test/Frontend/Weverything.c create mode 100644 test/Frontend/diagnostics-option-names.c create mode 100644 test/Frontend/warning-mapping-1.c create mode 100644 test/Frontend/warning-mapping-2.c create mode 100644 test/Frontend/warning-mapping-3.c create mode 100644 test/Frontend/warning-mapping-4.c create mode 100644 test/Frontend/warning-mapping-5.c create mode 100644 test/Headers/wchar_limits.cpp create mode 100644 test/Index/IBOutletCollection.m create mode 100644 test/Index/Inputs/preamble_macro_template.h create mode 100644 test/Index/annotate-attribute.cpp create mode 100644 test/Index/annotate-macro-args.h create mode 100644 test/Index/annotate-macro-args.m create mode 100644 test/Index/annotate-tokens-preamble.c create mode 100644 test/Index/annotate-tokens-with-default-args.cpp create mode 100644 test/Index/annotate-tokens-with-default-args.h create mode 100644 test/Index/complete-access-checks.cpp create mode 100644 test/Index/complete-cxx-inline-methods.cpp create mode 100644 test/Index/complete-in-stringify.c create mode 100644 test/Index/complete-macro-args.c create mode 100644 test/Index/complete-qualified.cpp create mode 100644 test/Index/complete-stmt.c create mode 100644 test/Index/complete-with-annotations.cpp create mode 100644 test/Index/cursor-ref-names.cpp create mode 100644 test/Index/file-refs.c create mode 100644 test/Index/file-refs.cpp create mode 100644 test/Index/file-refs.m create mode 100644 test/Index/get-cursor-macro-args.h create mode 100644 test/Index/get-cursor-macro-args.m create mode 100644 test/Index/get-cursor.c create mode 100644 test/Index/get-cursor.m create mode 100644 test/Index/getcursor-pp-pch.c create mode 100644 test/Index/getcursor-pp-pch.c.h create mode 100644 test/Index/in-class-init.cpp create mode 100644 test/Index/preamble-reparse-cmd-define.c create mode 100644 test/Index/preamble-reparse-cmd-define.c.h create mode 100644 test/Index/preamble-reparse-cmd-define.c.remap create mode 100644 test/Index/preamble_macro_template.cpp create mode 100644 test/Lexer/bcpl-escaped-newline.c create mode 100644 test/Lexer/cxx0x_raw_string_delim_length.cpp create mode 100644 test/Lexer/cxx0x_raw_string_unterminated.cpp create mode 100644 test/Lexer/newline-eof.c create mode 100644 test/Lexer/string_concat.cpp create mode 100644 test/Lexer/utf8-char-literal.cpp create mode 100644 test/Misc/ast-dump-templates.cpp create mode 100644 test/Misc/diag-line-wrapping.cpp create mode 100644 test/Misc/error-limit-multiple-notes.cpp create mode 100644 test/Misc/error-limit.c create mode 100644 test/Misc/show-diag-options.c create mode 100644 test/Misc/warning-flags.c create mode 100644 test/Modules/Inputs/CmdLine.framework/Headers/CmdLine.h create mode 100644 test/Modules/Inputs/DependsOnModule.framework/Headers/DependsOnModule.h create mode 100644 test/Modules/Inputs/Module.framework/Headers/Module.h create mode 100644 test/Modules/Inputs/MutuallyRecursive1.framework/Headers/MutuallyRecursive1.h create mode 100644 test/Modules/Inputs/MutuallyRecursive2.framework/Headers/MutuallyRecursive2.h create mode 100644 test/Modules/Inputs/diamond_bottom.h create mode 100644 test/Modules/Inputs/diamond_left.h create mode 100644 test/Modules/Inputs/diamond_right.h create mode 100644 test/Modules/Inputs/diamond_top.h create mode 100644 test/Modules/Inputs/load_failure.h create mode 100644 test/Modules/Inputs/lookup_left.h create mode 100644 test/Modules/Inputs/lookup_left.hpp create mode 100644 test/Modules/Inputs/lookup_right.h create mode 100644 test/Modules/Inputs/lookup_right.hpp create mode 100644 test/Modules/Inputs/point.h create mode 100644 test/Modules/auto-module-import.c create mode 100644 test/Modules/cycles.c create mode 100644 test/Modules/diamond.c create mode 100644 test/Modules/driver.c create mode 100644 test/Modules/header-import.m create mode 100644 test/Modules/irgen.c create mode 100644 test/Modules/load_failure.c create mode 100644 test/Modules/lookup.cpp create mode 100644 test/Modules/lookup.m create mode 100644 test/Modules/macros.c create mode 100644 test/Modules/module-private.cpp create mode 100644 test/Modules/objc-categories.m create mode 100644 test/Modules/on-demand-build-warnings.m create mode 100644 test/Modules/on-demand-build.m create mode 100644 test/Modules/on-demand-macros.m create mode 100644 test/PCH/Inputs/cxx-method.h create mode 100644 test/PCH/chain-categories.m create mode 100644 test/PCH/chain-conversion-lookup.cpp create mode 100644 test/PCH/chain-friend-instantiation.cpp create mode 100644 test/PCH/cxx-implicit-moves.cpp create mode 100644 test/PCH/cxx-ms-function-specialization-class-scope.cpp create mode 100644 test/PCH/cxx-ms-function-specialization-class-scope.h create mode 100644 test/PCH/method-redecls.m create mode 100644 test/Parser/PR11000.cpp create mode 100644 test/Parser/access-spec-attrs.cpp create mode 100644 test/Parser/c1x-alignas.c create mode 100644 test/Parser/cxx-member-init-missing-paren-crash.cpp create mode 100644 test/Parser/cxx0x-lambda-expressions.cpp create mode 100644 test/Parser/ms-inline-asm.c create mode 100644 test/Parser/objcxx-lambda-expressions-neg.mm create mode 100644 test/Parser/objcxx0x-lambda-expressions.mm create mode 100644 test/Parser/parser_overflow.c create mode 100644 test/Parser/pragma-visibility2.c create mode 100644 test/Preprocessor/expr_define_expansion.c create mode 100644 test/Preprocessor/missing-system-header.c create mode 100644 test/Preprocessor/missing-system-header.h create mode 100644 test/Preprocessor/pp-record.c create mode 100644 test/Preprocessor/pp-record.h create mode 100644 test/Preprocessor/predefined-arch-macros.c create mode 100644 test/Preprocessor/predefined-exceptions.m create mode 100644 test/Preprocessor/warning_tests.c create mode 100644 test/Rewriter/inner-block-helper-funcs.mm create mode 100644 test/Rewriter/instancetype-test.mm create mode 100644 test/Rewriter/protocol-rewrite-2.m create mode 100644 test/Rewriter/rewrite-cast-to-bool.mm create mode 100644 test/Rewriter/rewrite-foreach-in-block.mm create mode 100644 test/Rewriter/rewrite-forward-class.mm create mode 100644 test/Sema/2007-10-01-BuildArrayRef.c create mode 100644 test/Sema/2009-03-09-WeakDeclarations-1.c create mode 100644 test/Sema/2009-04-22-UnknownSize.c create mode 100644 test/Sema/2009-07-17-VoidParameter.c create mode 100644 test/Sema/2010-05-31-palignr.c create mode 100644 test/Sema/Inputs/pragma-arc-cf-code-audited.h create mode 100644 test/Sema/alignas.c create mode 100644 test/Sema/array-bounds-ptr-arith.c create mode 100644 test/Sema/atomic-ops.c create mode 100644 test/Sema/atomic-type.c create mode 100644 test/Sema/attr-returns-twice.c create mode 100644 test/Sema/complex-init-list.c create mode 100644 test/Sema/crash-invalid-array.c create mode 100644 test/Sema/fp16-sema.c create mode 100644 test/Sema/fpack-struct.c create mode 100644 test/Sema/initialize-noreturn.c create mode 100644 test/Sema/many-parameters.c delete mode 100644 test/Sema/ms-fuzzy-asm.c create mode 100644 test/Sema/ms_class_layout.cpp create mode 100644 test/Sema/pragma-arc-cf-code-audited.c create mode 100644 test/Sema/warn-strlcpycat-size.c create mode 100644 test/SemaCUDA/function-target.cu create mode 100644 test/SemaCXX/2008-01-11-BadWarning.cpp create mode 100644 test/SemaCXX/MicrosoftCompatibility.cpp create mode 100644 test/SemaCXX/PR10458.cpp create mode 100644 test/SemaCXX/array-bounds-ptr-arith.cpp create mode 100644 test/SemaCXX/complex-init-list.cpp create mode 100644 test/SemaCXX/cxx0x-class.cpp create mode 100644 test/SemaCXX/cxx0x-compat.cpp create mode 100644 test/SemaCXX/cxx0x-initializer-scalars.cpp create mode 100644 test/SemaCXX/cxx0x-type-convert-construct.cpp create mode 100644 test/SemaCXX/cxx98-compat-pedantic.cpp create mode 100644 test/SemaCXX/cxx98-compat.cpp create mode 100644 test/SemaCXX/deleted-operator.cpp create mode 100644 test/SemaCXX/microsoft-cxx0x.cpp create mode 100644 test/SemaCXX/out-of-line-def-mismatch.cpp create mode 100644 test/SemaCXX/overload-0x.cpp create mode 100644 test/SemaCXX/typo-correction.cpp create mode 100644 test/SemaCXX/warn-dangling-field.cpp delete mode 100644 test/SemaCXX/warn-sign-compare.cpp create mode 100644 test/SemaCXX/warn-sign-conversion.cpp create mode 100644 test/SemaCXX/warn-string-conversion.cpp create mode 100644 test/SemaCXX/warn-thread-safety-analysis.cpp create mode 100644 test/SemaCXX/warn-thread-safety-parsing.cpp create mode 100644 test/SemaCXX/warn-unused-comparison.cpp create mode 100644 test/SemaObjC/arc-cf.m create mode 100644 test/SemaObjC/arc-nsconsumed-errors.m create mode 100644 test/SemaObjC/arc-retain-block-property.m create mode 100644 test/SemaObjC/arc-setter-property-match.m create mode 100644 test/SemaObjC/arc-unavailable-system-function.m create mode 100644 test/SemaObjC/attr-availability.m create mode 100644 test/SemaObjC/attr-ns-bridged.m create mode 100644 test/SemaObjC/bad-property-synthesis-crash.m create mode 100644 test/SemaObjC/builtin_objc_assign_ivar.m create mode 100644 test/SemaObjC/class-protocol-method-match.m create mode 100644 test/SemaObjC/conflict-atomic-property.m create mode 100644 test/SemaObjC/default-synthesize-2.m create mode 100644 test/SemaObjC/enum-fixed-type.m create mode 100644 test/SemaObjC/instancetype.m create mode 100644 test/SemaObjC/missing-method-return-type.m create mode 100644 test/SemaObjC/nested-typedef-decl.m create mode 100644 test/SemaObjC/objc-buffered-methods.m create mode 100644 test/SemaObjC/protocol-implementing-class-methods.m create mode 100644 test/SemaObjC/qualified-protocol-method-conflicts.m create mode 100644 test/SemaObjC/warn-missing-super.m delete mode 100644 test/SemaObjCXX/arc-libcxx.mm create mode 100644 test/SemaObjCXX/arc-nsconsumed-errors.mm create mode 100644 test/SemaObjCXX/unknown-anytype.mm create mode 100644 test/SemaOpenCL/local.cl create mode 100644 test/SemaOpenCL/vector_conv_invalid.cl create mode 100644 test/SemaTemplate/atomics.cpp create mode 100644 test/SemaTemplate/delegating-constructors.cpp create mode 100644 test/SemaTemplate/lookup-dependent-bases.cpp create mode 100644 test/SemaTemplate/missing-class-keyword-crash.cpp create mode 100644 test/SemaTemplate/ms-function-specialization-class-scope.cpp create mode 100644 test/SemaTemplate/ms-lookup-template-base-classes.cpp create mode 100644 tools/diagtool/CMakeLists.txt create mode 100644 tools/diagtool/DiagTool.cpp create mode 100644 tools/diagtool/DiagTool.h create mode 100644 tools/diagtool/ListWarnings.cpp create mode 100644 tools/diagtool/Makefile create mode 100644 tools/diagtool/diagtool_main.cpp create mode 100644 tools/libclang/CIndexHigh.cpp create mode 100644 tools/libclang/Index_Internal.h delete mode 100644 tools/libclang/libclang.darwin.exports create mode 100644 unittests/AST/APValueTest.cpp create mode 100644 unittests/AST/Makefile create mode 100644 utils/TableGen/CMakeLists.txt create mode 100644 utils/TableGen/ClangASTNodesEmitter.cpp create mode 100644 utils/TableGen/ClangASTNodesEmitter.h create mode 100644 utils/TableGen/ClangAttrEmitter.cpp create mode 100644 utils/TableGen/ClangAttrEmitter.h create mode 100644 utils/TableGen/ClangDiagnosticsEmitter.cpp create mode 100644 utils/TableGen/ClangDiagnosticsEmitter.h create mode 100644 utils/TableGen/ClangSACheckersEmitter.cpp create mode 100644 utils/TableGen/ClangSACheckersEmitter.h create mode 100644 utils/TableGen/Makefile create mode 100644 utils/TableGen/NeonEmitter.cpp create mode 100644 utils/TableGen/NeonEmitter.h create mode 100644 utils/TableGen/OptParserEmitter.cpp create mode 100644 utils/TableGen/OptParserEmitter.h create mode 100644 utils/TableGen/TableGen.cpp delete mode 100755 utils/analyzer/CmpRuns create mode 100755 utils/analyzer/CmpRuns.py create mode 100644 utils/analyzer/SATestAdd.py create mode 100644 utils/analyzer/SATestBuild.py create mode 100644 utils/clangVisualizers.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..ddd66380adf8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,25 @@ +#==============================================================================# +# This file specifies intentionally untracked files that git should ignore. +# See: http://www.kernel.org/pub/software/scm/git/docs/gitignore.html +# +# This file is intentionally different from the output of `git svn show-ignore`, +# as most of those are useless. +#==============================================================================# + +#==============================================================================# +# File extensions to be ignored anywhere in the tree. +#==============================================================================# +# Temp files created by most text editors. +*~ +# Merge files created by git. +*.orig +# Byte compiled python modules. +*.pyc +# vim swap files +.*.swp + +#==============================================================================# +# Explicit files to ignore (only matches one). +#==============================================================================# +cscope.files +cscope.out diff --git a/CMakeLists.txt b/CMakeLists.txt index 3ad60eaff516..019168f5a915 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,10 +19,10 @@ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR ) endif() endif() - if( NOT EXISTS "${CLANG_PATH_TO_LLVM_BUILD}/bin/tblgen${CMAKE_EXECUTABLE_SUFFIX}" ) - # Looking for bin/Debug/tblgen is a complete hack. How can we get + if( NOT EXISTS "${CLANG_PATH_TO_LLVM_BUILD}/bin/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}" ) + # Looking for bin/Debug/llvm-tblgen is a complete hack. How can we get # around this? - if( NOT EXISTS "${CLANG_PATH_TO_LLVM_BUILD}/bin/Debug/tblgen${CMAKE_EXECUTABLE_SUFFIX}" ) + if( NOT EXISTS "${CLANG_PATH_TO_LLVM_BUILD}/bin/Debug/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}" ) message(FATAL_ERROR "Please set CLANG_PATH_TO_LLVM_BUILD to a directory containing a LLVM build.") endif() endif() @@ -46,11 +46,11 @@ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR ) include_directories("${PATH_TO_LLVM_BUILD}/include" "${LLVM_MAIN_INCLUDE_DIR}") link_directories("${PATH_TO_LLVM_BUILD}/lib") - if( EXISTS "${CLANG_PATH_TO_LLVM_BUILD}/bin/tblgen${CMAKE_EXECUTABLE_SUFFIX}" ) - set(LLVM_TABLEGEN_EXE "${PATH_TO_LLVM_BUILD}/bin/tblgen") + if( EXISTS "${CLANG_PATH_TO_LLVM_BUILD}/bin/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}" ) + set(LLVM_TABLEGEN_EXE "${PATH_TO_LLVM_BUILD}/bin/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}") else() # FIXME: This is an utter hack. - set(LLVM_TABLEGEN_EXE "${PATH_TO_LLVM_BUILD}/bin/Debug/tblgen") + set(LLVM_TABLEGEN_EXE "${PATH_TO_LLVM_BUILD}/bin/Debug/llvm-tblgen${CMAKE_EXECUTABLE_SUFFIX}") endif() set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin ) @@ -153,7 +153,7 @@ function(clang_tablegen) endif() set( LLVM_TARGET_DEFINITIONS ${CTG_SOURCE} ) - tablegen( ${CTG_DEFAULT_ARGS} ) + tablegen( CLANG ${CTG_DEFAULT_ARGS} ) list( GET CTG_DEFAULT_ARGS 0 output_file ) if( CTG_TARGET ) @@ -244,6 +244,7 @@ set(LIBCLANG_LIBRARY_VERSION "Version number that will be placed into the libclang library , in the form XX.YY") mark_as_advanced(CLANG_EXECUTABLE_VERSION LIBCLANG_LIBRARY_VERSION) +add_subdirectory(utils/TableGen) option(CLANG_BUILD_EXAMPLES "Build CLANG example programs." OFF) if(CLANG_BUILD_EXAMPLES) @@ -272,3 +273,6 @@ if( CLANG_BUILT_STANDALONE AND MSVC_VERSION EQUAL 1600 ) file(APPEND "${CLANG_SLN_FILENAME}" "\n# This should be regenerated!\n") endif() endif() + +set(BUG_REPORT_URL "http://llvm.org/bugs/" CACHE STRING + "Default URL where bug reports are to be submitted.") diff --git a/INPUTS/cfg-nested-var-scopes.cpp b/INPUTS/cfg-nested-var-scopes.cpp new file mode 100644 index 000000000000..0944ec268f1b --- /dev/null +++ b/INPUTS/cfg-nested-var-scopes.cpp @@ -0,0 +1,59 @@ +// Hammer the CFG with large numbers of overlapping variable scopes, which +// implicit destructors triggered at each edge. + +#define EXPAND_BASIC_STRUCT(i) struct X##i { X##i(int); ~X##i(); }; +#define EXPAND_NORET_STRUCT(i) struct X##i { X##i(int); ~X##i() __attribute__((noreturn)); }; +EXPAND_BASIC_STRUCT(0000); EXPAND_NORET_STRUCT(0001); +EXPAND_BASIC_STRUCT(0010); EXPAND_BASIC_STRUCT(0011); +EXPAND_BASIC_STRUCT(0100); EXPAND_NORET_STRUCT(0101); +EXPAND_NORET_STRUCT(0110); EXPAND_BASIC_STRUCT(0111); +EXPAND_BASIC_STRUCT(1000); EXPAND_NORET_STRUCT(1001); +EXPAND_BASIC_STRUCT(1010); EXPAND_BASIC_STRUCT(1011); +EXPAND_NORET_STRUCT(1100); EXPAND_NORET_STRUCT(1101); +EXPAND_BASIC_STRUCT(1110); EXPAND_BASIC_STRUCT(1111); + +#define EXPAND_2_VARS(c, i, x) const X##i var_##c##_##i##0(x), &var_##c##_##i##1 = X##i(x) +#define EXPAND_4_VARS(c, i, x) EXPAND_2_VARS(c, i##0, x); EXPAND_2_VARS(c, i##1, x) +#define EXPAND_8_VARS(c, i, x) EXPAND_4_VARS(c, i##0, x); EXPAND_4_VARS(c, i##1, x) +#define EXPAND_16_VARS(c, i, x) EXPAND_8_VARS(c, i##0, x); EXPAND_8_VARS(c, i##1, x) +#define EXPAND_32_VARS(c, x) EXPAND_16_VARS(c, 0, x); EXPAND_16_VARS(c, 1, x) + +#define EXPAND_2_INNER_CASES(i, x, y) INNER_CASE(i, x, y); INNER_CASE(i + 1, x, y); +#define EXPAND_4_INNER_CASES(i, x, y) EXPAND_2_INNER_CASES(i, x, y) EXPAND_2_INNER_CASES(i + 2, x, y) +#define EXPAND_8_INNER_CASES(i, x, y) EXPAND_4_INNER_CASES(i, x, y) EXPAND_4_INNER_CASES(i + 4, x, y) +#define EXPAND_16_INNER_CASES(i, x, y) EXPAND_8_INNER_CASES(i, x, y) EXPAND_8_INNER_CASES(i + 8, x, y) +#define EXPAND_32_INNER_CASES(i, x, y) EXPAND_16_INNER_CASES(i, x, y) EXPAND_16_INNER_CASES(i + 16, x, y) + +#define EXPAND_2_OUTER_CASES(i, x, y) OUTER_CASE(i, x, y); OUTER_CASE(i + 1, x, y); +#define EXPAND_4_OUTER_CASES(i, x, y) EXPAND_2_OUTER_CASES(i, x, y) EXPAND_2_OUTER_CASES(i + 2, x, y) +#define EXPAND_8_OUTER_CASES(i, x, y) EXPAND_4_OUTER_CASES(i, x, y) EXPAND_4_OUTER_CASES(i + 4, x, y) +#define EXPAND_16_OUTER_CASES(i, x, y) EXPAND_8_OUTER_CASES(i, x, y) EXPAND_8_OUTER_CASES(i + 8, x, y) +#define EXPAND_32_OUTER_CASES(i, x, y) EXPAND_16_OUTER_CASES(i, x, y) EXPAND_16_OUTER_CASES(i + 16, x, y) + +unsigned cfg_nested_vars(int x) { + int y = 0; + while (x > 0) { + EXPAND_32_VARS(a, x); + switch (x) { +#define INNER_CASE(i, x, y) \ + case i: { \ + int case_var = 3*x + i; \ + EXPAND_32_VARS(c, case_var); \ + y += case_var - 1; \ + break; \ + } +#define OUTER_CASE(i, x, y) \ + case i: { \ + int case_var = y >> 8; \ + EXPAND_32_VARS(b, y); \ + switch (case_var) { \ + EXPAND_32_INNER_CASES(0, x, y); \ + } \ + break; \ + } +EXPAND_32_OUTER_CASES(0, x, y); + } + --x; + } + return y; +} diff --git a/Makefile b/Makefile index b6c630aa10af..bf1a77210b5e 100644 --- a/Makefile +++ b/Makefile @@ -14,7 +14,7 @@ ifndef CLANG_LEVEL IS_TOP_LEVEL := 1 CLANG_LEVEL := . -DIRS := include lib tools runtime docs unittests +DIRS := utils/TableGen include lib tools runtime docs unittests PARALLEL_DIRS := @@ -60,6 +60,16 @@ endif # We can revisit this when LLVM/Clang support it. CXX.Flags += -fno-strict-aliasing +# Set up Clang's tblgen. +ifndef CLANG_TBLGEN + ifeq ($(LLVM_CROSS_COMPILING),1) + CLANG_TBLGEN := $(BuildLLVMToolDir)/clang-tblgen$(BUILD_EXEEXT) + else + CLANG_TBLGEN := $(LLVMToolDir)/clang-tblgen$(EXEEXT) + endif +endif +ClangTableGen = $(CLANG_TBLGEN) $(TableGen.Flags) + ### # Clang Top Level specific stuff. @@ -68,7 +78,7 @@ ifeq ($(IS_TOP_LEVEL),1) ifneq ($(PROJ_SRC_ROOT),$(PROJ_OBJ_ROOT)) $(RecursiveTargets):: $(Verb) for dir in test unittests; do \ - if [ ! -f $${dir}/Makefile ]; then \ + if [ -f $(PROJ_SRC_DIR)/$${dir}/Makefile ] && [ ! -f $${dir}/Makefile ]; then \ $(MKDIR) $${dir}; \ $(CP) $(PROJ_SRC_DIR)/$${dir}/Makefile $${dir}/Makefile; \ fi \ diff --git a/NOTES.txt b/NOTES.txt index f66a96120a81..9f7ed4b9591c 100644 --- a/NOTES.txt +++ b/NOTES.txt @@ -83,3 +83,21 @@ enum VerifyConstraintResult { }; //===---------------------------------------------------------------------===// + +Blocks should not capture variables that are only used in dead code. + +The rule that we came up with is that blocks are required to capture +variables if they're referenced in evaluated code, even if that code +doesn't actually rely on the value of the captured variable. + +For example, this requires a capture: + (void) var; +But this does not: + if (false) puts(var); + +Summary of : if we implement this, we should +warn about non-POD variables that are referenced but not captured, but +only if the non-reachability is not due to macro or template +metaprogramming. + +//===---------------------------------------------------------------------===// diff --git a/TODO.txt b/TODO.txt deleted file mode 100644 index 8c27515ae74a..000000000000 --- a/TODO.txt +++ /dev/null @@ -1,75 +0,0 @@ -//===---------------------------------------------------------------------===// -// Minor random things that can be improved -//===---------------------------------------------------------------------===// - -Warn about "X && 0x1000" saying that the user may mean "X & 0x1000". -We should do this for any immediate except zero, so long as it doesn't come -from a macro expansion. Likewise for ||. - -//===---------------------------------------------------------------------===// - -Lexer-related diagnostics should point to the problematic character, not the -start of the token. For example: - -int y = 0000\ -00080; - -diag.c:4:9: error: invalid digit '8' in octal constant -int y = 0000\ - ^ - -should be: - -diag.c:4:9: error: invalid digit '8' in octal constant -00080; - ^ - -This specific diagnostic is implemented, but others should be updated. - -//===---------------------------------------------------------------------===// - -C++ (checker): For iterators, warn of the use of "iterator++" instead - of "++iterator" when when the value returned by operator++(int) is - ignored. - -//===---------------------------------------------------------------------===// - -We want to keep more source range information in Declarator to help -produce better diagnostics. Declarator::getSourceRange() should be -implemented to give a range for the whole declarator with all of its -specifiers, and DeclaratorChunk::ParamInfo should also have a source -range covering the whole parameter, so that an error message like this: - -overloaded-operator-decl.cpp:37:23: error: parameter of overloaded post-increment operator must have type 'int' (not 'float') -X operator++(X&, const float& f); - ^ -can be turned into something like this: - -overloaded-operator-decl.cpp:37:23: error: parameter of overloaded post-increment operator must have type 'int' (not 'float') -X operator++(X&, const float& f); - ^ ~~~~~~~~~~~~~~ - -//===---------------------------------------------------------------------===// - -For terminal output, we should consider limiting the amount of -diagnostic text we print once the first error has been -encountered. For example, once we have produced an error diagnostic, -we should only continue producing diagnostics until we have produced a -page full of results (say, 50 lines of text). Beyond that, (1) the -remaining errors are likely to be less interesting, and (2) the poor -user has to scroll his terminal to find out where things went wrong. - -//===---------------------------------------------------------------------===// -More ideas for code modification hints: - - If no member of a given name is found in a class/struct, search through the names of entities that do exist in the class and suggest the closest candidate. e.g., if I write "DS.setTypeSpecType", it would suggest "DS.SetTypeSpecType" (edit distance = 1). - - 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., for typeid) - -//===---------------------------------------------------------------------===// - -Options to support: - -ftabstop=width - -fpreprocessed mode. - -nostdinc++ - -imultilib - diff --git a/bindings/python/clang/cindex.py b/bindings/python/clang/cindex.py index 8cadcaa7ad06..35c423d7d898 100644 --- a/bindings/python/clang/cindex.py +++ b/bindings/python/clang/cindex.py @@ -112,7 +112,7 @@ class SourceLocation(Structure): f, l, c, o = c_object_p(), c_uint(), c_uint(), c_uint() SourceLocation_loc(self, byref(f), byref(l), byref(c), byref(o)) f = File(f) if f else None - self._data = (f, int(l.value), int(c.value), int(c.value)) + self._data = (f, int(l.value), int(c.value), int(o.value)) return self._data @property @@ -451,6 +451,19 @@ CursorKind.USING_DIRECTIVE = CursorKind(34) # A C++ using declaration CursorKind.USING_DECLARATION = CursorKind(35) +# A Type alias decl. +CursorKind.TYPE_ALIAS_DECL = CursorKind(36) + +# A Objective-C synthesize decl +CursorKind.OBJC_SYNTHESIZE_DECL = CursorKind(37) + +# A Objective-C dynamic decl +CursorKind.OBJC_DYNAMIC_DECL = CursorKind(38) + +# A C++ access specifier decl. +CursorKind.CXX_ACCESS_SPEC_DECL = CursorKind(39) + + ### # Reference Kinds @@ -524,6 +537,154 @@ CursorKind.OBJC_MESSAGE_EXPR = CursorKind(104) # An expression that represents a block literal. CursorKind.BLOCK_EXPR = CursorKind(105) +# An integer literal. +CursorKind.INTEGER_LITERAL = CursorKind(106) + +# A floating point number literal. +CursorKind.FLOATING_LITERAL = CursorKind(107) + +# An imaginary number literal. +CursorKind.IMAGINARY_LITERAL = CursorKind(108) + +# A string literal. +CursorKind.STRING_LITERAL = CursorKind(109) + +# A character literal. +CursorKind.CHARACTER_LITERAL = CursorKind(110) + +# A parenthesized expression, e.g. "(1)". +# +# This AST node is only formed if full location information is requested. +CursorKind.PAREN_EXPR = CursorKind(111) + +# This represents the unary-expression's (except sizeof and +# alignof). +CursorKind.UNARY_OPERATOR = CursorKind(112) + +# [C99 6.5.2.1] Array Subscripting. +CursorKind.ARRAY_SUBSCRIPT_EXPR = CursorKind(113) + +# A builtin binary operation expression such as "x + y" or +# "x <= y". +CursorKind.BINARY_OPERATOR = CursorKind(114) + +# Compound assignment such as "+=". +CursorKind.COMPOUND_ASSIGNMENT_OPERATOR = CursorKind(115) + +# The ?: ternary operator. +CursorKind.CONDITONAL_OPERATOR = CursorKind(116) + +# An explicit cast in C (C99 6.5.4) or a C-style cast in C++ +# (C++ [expr.cast]), which uses the syntax (Type)expr. +# +# For example: (int)f. +CursorKind.CSTYLE_CAST_EXPR = CursorKind(117) + +# [C99 6.5.2.5] +CursorKind.COMPOUND_LITERAL_EXPR = CursorKind(118) + +# Describes an C or C++ initializer list. +CursorKind.INIT_LIST_EXPR = CursorKind(119) + +# The GNU address of label extension, representing &&label. +CursorKind.ADDR_LABEL_EXPR = CursorKind(120) + +# This is the GNU Statement Expression extension: ({int X=4; X;}) +CursorKind.StmtExpr = CursorKind(121) + +# Represents a C1X generic selection. +CursorKind.GENERIC_SELECTION_EXPR = CursorKind(122) + +# Implements the GNU __null extension, which is a name for a null +# pointer constant that has integral type (e.g., int or long) and is the same +# size and alignment as a pointer. +# +# The __null extension is typically only used by system headers, which define +# NULL as __null in C++ rather than using 0 (which is an integer that may not +# match the size of a pointer). +CursorKind.GNU_NULL_EXPR = CursorKind(123) + +# C++'s static_cast<> expression. +CursorKind.CXX_STATIC_CAST_EXPR = CursorKind(124) + +# C++'s dynamic_cast<> expression. +CursorKind.CXX_DYNAMIC_CAST_EXPR = CursorKind(125) + +# C++'s reinterpret_cast<> expression. +CursorKind.CXX_REINTERPRET_CAST_EXPR = CursorKind(126) + +# C++'s const_cast<> expression. +CursorKind.CXX_CONST_CAST_EXPR = CursorKind(127) + +# Represents an explicit C++ type conversion that uses "functional" +# notion (C++ [expr.type.conv]). +# +# Example: +# \code +# x = int(0.5); +# \endcode +CursorKind.CXX_FUNCTIONAL_CAST_EXPR = CursorKind(128) + +# A C++ typeid expression (C++ [expr.typeid]). +CursorKind.CXX_TYPEID_EXPR = CursorKind(129) + +# [C++ 2.13.5] C++ Boolean Literal. +CursorKind.CXX_BOOL_LITERAL_EXPR = CursorKind(130) + +# [C++0x 2.14.7] C++ Pointer Literal. +CursorKind.CXX_NULL_PTR_LITERAL_EXPR = CursorKind(131) + +# Represents the "this" expression in C++ +CursorKind.CXX_THIS_EXPR = CursorKind(132) + +# [C++ 15] C++ Throw Expression. +# +# This handles 'throw' and 'throw' assignment-expression. When +# assignment-expression isn't present, Op will be null. +CursorKind.CXX_THROW_EXPR = CursorKind(133) + +# A new expression for memory allocation and constructor calls, e.g: +# "new CXXNewExpr(foo)". +CursorKind.CXX_NEW_EXPR = CursorKind(134) + +# A delete expression for memory deallocation and destructor calls, +# e.g. "delete[] pArray". +CursorKind.CXX_DELETE_EXPR = CursorKind(135) + +# Represents a unary expression. +CursorKind.CXX_UNARY_EXPR = CursorKind(136) + +# ObjCStringLiteral, used for Objective-C string literals i.e. "foo". +CursorKind.OBJC_STRING_LITERAL = CursorKind(137) + +# ObjCEncodeExpr, used for in Objective-C. +CursorKind.OBJC_ENCODE_EXPR = CursorKind(138) + +# ObjCSelectorExpr used for in Objective-C. +CursorKind.OBJC_SELECTOR_EXPR = CursorKind(139) + +# Objective-C's protocol expression. +CursorKind.OBJC_PROTOCOL_EXPR = CursorKind(140) + +# An Objective-C "bridged" cast expression, which casts between +# Objective-C pointers and C pointers, transferring ownership in the process. +# +# \code +# NSString *str = (__bridge_transfer NSString *)CFCreateString(); +# \endcode +CursorKind.OBJC_BRIDGE_CAST_EXPR = CursorKind(141) + +# Represents a C++0x pack expansion that produces a sequence of +# expressions. +# +# A pack expansion expression contains a pattern (which itself is an +# expression) followed by an ellipsis. For example: +CursorKind.PACK_EXPANSION_EXPR = CursorKind(142) + +# Represents an expression that computes the length of a parameter +# pack. +CursorKind.SIZE_OF_PACK_EXPR = CursorKind(143) + # A statement whose specific kind is not exposed via this interface. # # Unexposed statements have the same operations as any other kind of statement; @@ -534,6 +695,92 @@ CursorKind.UNEXPOSED_STMT = CursorKind(200) # A labelled statement in a function. CursorKind.LABEL_STMT = CursorKind(201) +# A compound statement +CursorKind.COMPOUND_STMT = CursorKind(202) + +# A case statement. +CursorKind.CASE_STMT = CursorKind(203) + +# A default statement. +CursorKind.DEFAULT_STMT = CursorKind(204) + +# An if statement. +CursorKind.IF_STMT = CursorKind(205) + +# A switch statement. +CursorKind.SWITCH_STMT = CursorKind(206) + +# A while statement. +CursorKind.WHILE_STMT = CursorKind(207) + +# A do statement. +CursorKind.DO_STMT = CursorKind(208) + +# A for statement. +CursorKind.FOR_STMT = CursorKind(209) + +# A goto statement. +CursorKind.GOTO_STMT = CursorKind(210) + +# An indirect goto statement. +CursorKind.INDIRECT_GOTO_STMT = CursorKind(211) + +# A continue statement. +CursorKind.CONTINUE_STMT = CursorKind(212) + +# A break statement. +CursorKind.BREAK_STMT = CursorKind(213) + +# A return statement. +CursorKind.RETURN_STMT = CursorKind(214) + +# A GNU-style inline assembler statement. +CursorKind.ASM_STMT = CursorKind(215) + +# Objective-C's overall @try-@catch-@finally statement. +CursorKind.OBJC_AT_TRY_STMT = CursorKind(216) + +# Objective-C's @catch statement. +CursorKind.OBJC_AT_CATCH_STMT = CursorKind(217) + +# Objective-C's @finally statement. +CursorKind.OBJC_AT_FINALLY_STMT = CursorKind(218) + +# Objective-C's @throw statement. +CursorKind.OBJC_AT_THROW_STMT = CursorKind(219) + +# Objective-C's @synchronized statement. +CursorKind.OBJC_AT_SYNCHRONIZED_STMT = CursorKind(220) + +# Objective-C's autorealease pool statement. +CursorKind.OBJC_AUTORELEASE_POOL_STMT = CursorKind(221) + +# Objective-C's for collection statement. +CursorKind.OBJC_FOR_COLLECTION_STMT = CursorKind(222) + +# C++'s catch statement. +CursorKind.CXX_CATCH_STMT = CursorKind(223) + +# C++'s try statement. +CursorKind.CXX_TRY_STMT = CursorKind(224) + +# C++'s for (* : *) statement. +CursorKind.CXX_FOR_RANGE_STMT = CursorKind(225) + +# Windows Structured Exception Handling's try statement. +CursorKind.SEH_TRY_STMT = CursorKind(226) + +# Windows Structured Exception Handling's except statement. +CursorKind.SEH_EXCEPT_STMT = CursorKind(227) + +# Windows Structured Exception Handling's finally statement. +CursorKind.SEH_FINALLY_STMT = CursorKind(228) + +# The null statement. +CursorKind.NULL_STMT = CursorKind(230) + +# Adaptor class for mixing declarations with statements and expressions. +CursorKind.DECL_STMT = CursorKind(231) ### # Other Kinds @@ -616,7 +863,22 @@ class Cursor(Structure): # FIXME: clang_getCursorSpelling should be fixed to not assert on # this, for consistency with clang_getCursorUSR. return None - return Cursor_spelling(self) + if not hasattr(self, '_spelling'): + self._spelling = Cursor_spelling(self) + return self._spelling + + @property + def displayname(self): + """ + Return the display name for the entity referenced by this cursor. + + The display name contains extra information that helps identify the cursor, + such as the parameters of a function or template or the arguments of a + class template specialization. + """ + if not hasattr(self, '_displayname'): + self._displayname = Cursor_displayname(self) + return self._displayname @property def location(self): @@ -624,7 +886,9 @@ class Cursor(Structure): Return the source location (the starting character) of the entity pointed at by the cursor. """ - return Cursor_loc(self) + if not hasattr(self, '_loc'): + self._loc = Cursor_loc(self) + return self._loc @property def extent(self): @@ -632,7 +896,19 @@ class Cursor(Structure): Return the source range (the range of text) occupied by the entity pointed at by the cursor. """ - return Cursor_extent(self) + if not hasattr(self, '_extent'): + self._extent = Cursor_extent(self) + return self._extent + + @property + def type(self): + """ + Retrieve the type (if any) of of the entity pointed at by the + cursor. + """ + if not hasattr(self, '_type'): + self._type = Cursor_type(self) + return self._type def get_children(self): """Return an iterator for accessing the children of this cursor.""" @@ -656,6 +932,165 @@ class Cursor(Structure): return None return res + +### Type Kinds ### + +class TypeKind(object): + """ + Describes the kind of type. + """ + + # The unique kind objects, indexed by id. + _kinds = [] + _name_map = None + + def __init__(self, value): + if value >= len(TypeKind._kinds): + TypeKind._kinds += [None] * (value - len(TypeKind._kinds) + 1) + if TypeKind._kinds[value] is not None: + raise ValueError,'TypeKind already loaded' + self.value = value + TypeKind._kinds[value] = self + TypeKind._name_map = None + + def from_param(self): + return self.value + + @property + def name(self): + """Get the enumeration name of this cursor kind.""" + if self._name_map is None: + self._name_map = {} + for key,value in TypeKind.__dict__.items(): + if isinstance(value,TypeKind): + self._name_map[value] = key + return self._name_map[self] + + @staticmethod + def from_id(id): + if id >= len(TypeKind._kinds) or TypeKind._kinds[id] is None: + raise ValueError,'Unknown cursor kind' + return TypeKind._kinds[id] + + def __repr__(self): + return 'TypeKind.%s' % (self.name,) + + + +TypeKind.INVALID = TypeKind(0) +TypeKind.UNEXPOSED = TypeKind(1) +TypeKind.VOID = TypeKind(2) +TypeKind.BOOL = TypeKind(3) +TypeKind.CHAR_U = TypeKind(4) +TypeKind.UCHAR = TypeKind(5) +TypeKind.CHAR16 = TypeKind(6) +TypeKind.CHAR32 = TypeKind(7) +TypeKind.USHORT = TypeKind(8) +TypeKind.UINT = TypeKind(9) +TypeKind.ULONG = TypeKind(10) +TypeKind.ULONGLONG = TypeKind(11) +TypeKind.UINT128 = TypeKind(12) +TypeKind.CHAR_S = TypeKind(13) +TypeKind.SCHAR = TypeKind(14) +TypeKind.WCHAR = TypeKind(15) +TypeKind.SHORT = TypeKind(16) +TypeKind.INT = TypeKind(17) +TypeKind.LONG = TypeKind(18) +TypeKind.LONGLONG = TypeKind(19) +TypeKind.INT128 = TypeKind(20) +TypeKind.FLOAT = TypeKind(21) +TypeKind.DOUBLE = TypeKind(22) +TypeKind.LONGDOUBLE = TypeKind(23) +TypeKind.NULLPTR = TypeKind(24) +TypeKind.OVERLOAD = TypeKind(25) +TypeKind.DEPENDENT = TypeKind(26) +TypeKind.OBJCID = TypeKind(27) +TypeKind.OBJCCLASS = TypeKind(28) +TypeKind.OBJCSEL = TypeKind(29) +TypeKind.COMPLEX = TypeKind(100) +TypeKind.POINTER = TypeKind(101) +TypeKind.BLOCKPOINTER = TypeKind(102) +TypeKind.LVALUEREFERENCE = TypeKind(103) +TypeKind.RVALUEREFERENCE = TypeKind(104) +TypeKind.RECORD = TypeKind(105) +TypeKind.ENUM = TypeKind(106) +TypeKind.TYPEDEF = TypeKind(107) +TypeKind.OBJCINTERFACE = TypeKind(108) +TypeKind.OBJCOBJECTPOINTER = TypeKind(109) +TypeKind.FUNCTIONNOPROTO = TypeKind(110) +TypeKind.FUNCTIONPROTO = TypeKind(111) + + +class Type(Structure): + """ + The type of an element in the abstract syntax tree. + """ + _fields_ = [("_kind_id", c_int), ("data", c_void_p * 2)] + + @property + def kind(self): + """Return the kind of this type.""" + return TypeKind.from_id(self._kind_id) + + @staticmethod + def from_result(res, fn, args): + assert isinstance(res, Type) + return res + + def get_canonical(self): + """ + Return the canonical type for a Type. + + Clang's type system explicitly models typedefs and all the + ways a specific type can be represented. The canonical type + is the underlying type with all the "sugar" removed. For + example, if 'T' is a typedef for 'int', the canonical type for + 'T' would be 'int'. + """ + return Type_get_canonical(self) + + def is_const_qualified(self): + """ + Determine whether a Type has the "const" qualifier set, + without looking through typedefs that may have added "const" + at a different level. + """ + return Type_is_const_qualified(self) + + def is_volatile_qualified(self): + """ + Determine whether a Type has the "volatile" qualifier set, + without looking through typedefs that may have added + "volatile" at a different level. + """ + return Type_is_volatile_qualified(self) + + def is_restrict_qualified(self): + """ + Determine whether a Type has the "restrict" qualifier set, + without looking through typedefs that may have added + "restrict" at a different level. + """ + return Type_is_restrict_qualified(self) + + def get_pointee(self): + """ + For pointer types, returns the type of the pointee. + """ + return Type_get_pointee(self) + + def get_declaration(self): + """ + Return the cursor for the declaration of the given type. + """ + return Type_get_declaration(self) + + def get_result(self): + """ + Retrieve the result type associated with a function type. + """ + return Type_get_result(self) + ## CIndex Objects ## # CIndex objects (derived from ClangObject) are essentially lightweight @@ -1210,11 +1645,50 @@ Cursor_ref.argtypes = [Cursor] Cursor_ref.restype = Cursor Cursor_ref.errcheck = Cursor.from_result +Cursor_type = lib.clang_getCursorType +Cursor_type.argtypes = [Cursor] +Cursor_type.restype = Type +Cursor_type.errcheck = Type.from_result + Cursor_visit_callback = CFUNCTYPE(c_int, Cursor, Cursor, py_object) Cursor_visit = lib.clang_visitChildren Cursor_visit.argtypes = [Cursor, Cursor_visit_callback, py_object] Cursor_visit.restype = c_uint +# Type Functions +Type_get_canonical = lib.clang_getCanonicalType +Type_get_canonical.argtypes = [Type] +Type_get_canonical.restype = Type +Type_get_canonical.errcheck = Type.from_result + +Type_is_const_qualified = lib.clang_isConstQualifiedType +Type_is_const_qualified.argtypes = [Type] +Type_is_const_qualified.restype = bool + +Type_is_volatile_qualified = lib.clang_isVolatileQualifiedType +Type_is_volatile_qualified.argtypes = [Type] +Type_is_volatile_qualified.restype = bool + +Type_is_restrict_qualified = lib.clang_isRestrictQualifiedType +Type_is_restrict_qualified.argtypes = [Type] +Type_is_restrict_qualified.restype = bool + +Type_get_pointee = lib.clang_getPointeeType +Type_get_pointee.argtypes = [Type] +Type_get_pointee.restype = Type +Type_get_pointee.errcheck = Type.from_result + +Type_get_declaration = lib.clang_getTypeDeclaration +Type_get_declaration.argtypes = [Type] +Type_get_declaration.restype = Cursor +Type_get_declaration.errcheck = Cursor.from_result + +Type_get_result = lib.clang_getResultType +Type_get_result.argtypes = [Type] +Type_get_result.restype = Type +Type_get_result.errcheck = Type.from_result + + # Index Functions Index_create = lib.clang_createIndex Index_create.argtypes = [c_int, c_int] @@ -1313,6 +1787,6 @@ _clang_getCompletionPriority.restype = c_int ### -__all__ = ['Index', 'TranslationUnit', 'Cursor', 'CursorKind', +__all__ = ['Index', 'TranslationUnit', 'Cursor', 'CursorKind', 'Type', 'TypeKind', 'Diagnostic', 'FixIt', 'CodeCompletionResults', 'SourceRange', 'SourceLocation', 'File'] diff --git a/bindings/python/tests/cindex/test_cursor.py b/bindings/python/tests/cindex/test_cursor.py index a653ba7bf28e..3dde891a9c26 100644 --- a/bindings/python/tests/cindex/test_cursor.py +++ b/bindings/python/tests/cindex/test_cursor.py @@ -1,4 +1,4 @@ -from clang.cindex import Index, CursorKind +from clang.cindex import Index, CursorKind, TypeKind kInput = """\ // FIXME: Find nicer way to drop builtins and other cruft. @@ -47,13 +47,17 @@ def test_get_children(): assert len(s0_nodes) == 2 assert s0_nodes[0].kind == CursorKind.FIELD_DECL assert s0_nodes[0].spelling == 'a' + assert s0_nodes[0].type.kind == TypeKind.INT assert s0_nodes[1].kind == CursorKind.FIELD_DECL assert s0_nodes[1].spelling == 'b' + assert s0_nodes[1].type.kind == TypeKind.INT assert tu_nodes[1].kind == CursorKind.STRUCT_DECL assert tu_nodes[1].spelling == 's1' + assert tu_nodes[1].displayname == 's1' assert tu_nodes[1].is_definition() == False assert tu_nodes[2].kind == CursorKind.FUNCTION_DECL assert tu_nodes[2].spelling == 'f0' + assert tu_nodes[2].displayname == 'f0(int, int)' assert tu_nodes[2].is_definition() == True diff --git a/bindings/python/tests/cindex/test_diagnostics.py b/bindings/python/tests/cindex/test_diagnostics.py index c1ff0e38baad..98f97d3bd3b1 100644 --- a/bindings/python/tests/cindex/test_diagnostics.py +++ b/bindings/python/tests/cindex/test_diagnostics.py @@ -36,7 +36,7 @@ def test_diagnostic_fixit(): assert len(tu.diagnostics) == 1 assert tu.diagnostics[0].severity == Diagnostic.Warning assert tu.diagnostics[0].location.line == 1 - assert tu.diagnostics[0].location.column == 31 + assert tu.diagnostics[0].location.column == 26 assert tu.diagnostics[0].spelling.startswith('use of GNU old-style') assert len(tu.diagnostics[0].fixits) == 1 assert tu.diagnostics[0].fixits[0].range.start.line == 1 diff --git a/bindings/python/tests/cindex/test_location.py b/bindings/python/tests/cindex/test_location.py new file mode 100644 index 000000000000..47c1c6021f55 --- /dev/null +++ b/bindings/python/tests/cindex/test_location.py @@ -0,0 +1,50 @@ +from clang.cindex import Index + +baseInput="int one;\nint two;\n" + +def assert_location(loc, line, column, offset): + assert loc.line == line + assert loc.column == column + assert loc.offset == offset + +def test_location(): + index = Index.create() + tu = index.parse('t.c', unsaved_files = [('t.c',baseInput)]) + + for n in tu.cursor.get_children(): + if n.spelling == 'one': + assert_location(n.location,line=1,column=5,offset=4) + if n.spelling == 'two': + assert_location(n.location,line=2,column=5,offset=13) + + # adding a linebreak at top should keep columns same + tu = index.parse('t.c', unsaved_files = [('t.c',"\n"+baseInput)]) + + for n in tu.cursor.get_children(): + if n.spelling == 'one': + assert_location(n.location,line=2,column=5,offset=5) + if n.spelling == 'two': + assert_location(n.location,line=3,column=5,offset=14) + + # adding a space should affect column on first line only + tu = index.parse('t.c', unsaved_files = [('t.c'," "+baseInput)]) + + for n in tu.cursor.get_children(): + if n.spelling == 'one': + assert_location(n.location,line=1,column=6,offset=5) + if n.spelling == 'two': + assert_location(n.location,line=2,column=5,offset=14) + +def test_extent(): + index = Index.create() + tu = index.parse('t.c', unsaved_files = [('t.c',baseInput)]) + + for n in tu.cursor.get_children(): + if n.spelling == 'one': + assert_location(n.extent.start,line=1,column=1,offset=0) + assert_location(n.extent.end,line=1,column=8,offset=7) + assert baseInput[n.extent.start.offset:n.extent.end.offset] == "int one" + if n.spelling == 'two': + assert_location(n.extent.start,line=2,column=1,offset=9) + assert_location(n.extent.end,line=2,column=8,offset=16) + assert baseInput[n.extent.start.offset:n.extent.end.offset] == "int two" diff --git a/bindings/python/tests/cindex/test_type.py b/bindings/python/tests/cindex/test_type.py new file mode 100644 index 000000000000..cd27a4cbb98d --- /dev/null +++ b/bindings/python/tests/cindex/test_type.py @@ -0,0 +1,76 @@ +from clang.cindex import Index, CursorKind, TypeKind + +kInput = """\ + +typedef int I; + +struct teststruct { + int a; + I b; + long c; + unsigned long d; + signed long e; + const int f; + int *g; + int ***h; +}; + +""" + +def test_a_struct(): + index = Index.create() + tu = index.parse('t.c', unsaved_files = [('t.c',kInput)]) + + for n in tu.cursor.get_children(): + if n.spelling == 'teststruct': + fields = list(n.get_children()) + + assert all(x.kind == CursorKind.FIELD_DECL for x in fields) + + assert fields[0].spelling == 'a' + assert not fields[0].type.is_const_qualified() + assert fields[0].type.kind == TypeKind.INT + assert fields[0].type.get_canonical().kind == TypeKind.INT + + assert fields[1].spelling == 'b' + assert not fields[1].type.is_const_qualified() + assert fields[1].type.kind == TypeKind.TYPEDEF + assert fields[1].type.get_canonical().kind == TypeKind.INT + assert fields[1].type.get_declaration().spelling == 'I' + + assert fields[2].spelling == 'c' + assert not fields[2].type.is_const_qualified() + assert fields[2].type.kind == TypeKind.LONG + assert fields[2].type.get_canonical().kind == TypeKind.LONG + + assert fields[3].spelling == 'd' + assert not fields[3].type.is_const_qualified() + assert fields[3].type.kind == TypeKind.ULONG + assert fields[3].type.get_canonical().kind == TypeKind.ULONG + + assert fields[4].spelling == 'e' + assert not fields[4].type.is_const_qualified() + assert fields[4].type.kind == TypeKind.LONG + assert fields[4].type.get_canonical().kind == TypeKind.LONG + + assert fields[5].spelling == 'f' + assert fields[5].type.is_const_qualified() + assert fields[5].type.kind == TypeKind.INT + assert fields[5].type.get_canonical().kind == TypeKind.INT + + assert fields[6].spelling == 'g' + assert not fields[6].type.is_const_qualified() + assert fields[6].type.kind == TypeKind.POINTER + assert fields[6].type.get_pointee().kind == TypeKind.INT + + assert fields[7].spelling == 'h' + assert not fields[7].type.is_const_qualified() + assert fields[7].type.kind == TypeKind.POINTER + assert fields[7].type.get_pointee().kind == TypeKind.POINTER + assert fields[7].type.get_pointee().get_pointee().kind == TypeKind.POINTER + assert fields[7].type.get_pointee().get_pointee().get_pointee().kind == TypeKind.INT + + break + + else: + assert False, "Didn't find teststruct??" diff --git a/clang.xcodeproj/project.pbxproj b/clang.xcodeproj/project.pbxproj deleted file mode 100644 index 832e07ab44f2..000000000000 --- a/clang.xcodeproj/project.pbxproj +++ /dev/null @@ -1,2103 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 42; - objects = { - -/* Begin PBXBuildFile section */ - BD6B0EDF13A1824C00B8E3FE /* Mangle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BD6B0EDE13A1824C00B8E3FE /* Mangle.cpp */; }; - BD6B0EE213A182A600B8E3FE /* ItaniumMangle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BD6B0EE113A182A600B8E3FE /* ItaniumMangle.cpp */; }; - BD6B0EE413A182DA00B8E3FE /* MicrosoftMangle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BD6B0EE313A182DA00B8E3FE /* MicrosoftMangle.cpp */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 8DD76F690486A84900D96B5E /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 8; - dstPath = /usr/share/man/man1/; - dstSubfolderSpec = 0; - files = ( - ); - runOnlyForDeploymentPostprocessing = 1; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 035611470DA6A45C00D2EF2A /* DeclBase.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclBase.h; path = clang/AST/DeclBase.h; sourceTree = ""; tabWidth = 2; }; - 03F50AC50D416EAA00B9CF60 /* Targets.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Targets.cpp; sourceTree = ""; tabWidth = 2; }; - 1A15C407118226980092260D /* ASTImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ASTImporter.h; path = clang/AST/ASTImporter.h; sourceTree = ""; tabWidth = 2; }; - 1A15C408118226980092260D /* ASTVector.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ASTVector.h; path = clang/AST/ASTVector.h; sourceTree = ""; tabWidth = 2; }; - 1A15C409118226980092260D /* CharUnits.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CharUnits.h; path = clang/AST/CharUnits.h; sourceTree = ""; tabWidth = 2; }; - 1A15C40A118226980092260D /* DeclAccessPair.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclAccessPair.h; path = clang/AST/DeclAccessPair.h; sourceTree = ""; tabWidth = 2; }; - 1A15C40B118226980092260D /* DeclFriend.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclFriend.h; path = clang/AST/DeclFriend.h; sourceTree = ""; tabWidth = 2; }; - 1A15C40C118226980092260D /* DependentDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DependentDiagnostic.h; path = clang/AST/DependentDiagnostic.h; sourceTree = ""; tabWidth = 2; }; - 1A15C40D118226980092260D /* TemplateBase.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TemplateBase.h; path = clang/AST/TemplateBase.h; sourceTree = ""; tabWidth = 2; }; - 1A15C40E118226980092260D /* UnresolvedSet.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = UnresolvedSet.h; path = clang/AST/UnresolvedSet.h; sourceTree = ""; tabWidth = 2; }; - 1A15C40F118226980092260D /* UsuallyTinyPtrVector.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = UsuallyTinyPtrVector.h; path = clang/AST/UsuallyTinyPtrVector.h; sourceTree = ""; tabWidth = 2; }; - 1A2193CB0F45EEB700C0713D /* ABIInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ABIInfo.h; path = lib/CodeGen/ABIInfo.h; sourceTree = ""; tabWidth = 2; }; - 1A2193CC0F45EEB700C0713D /* Mangle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Mangle.cpp; path = lib/CodeGen/Mangle.cpp; sourceTree = ""; tabWidth = 2; }; - 1A2193CD0F45EEB700C0713D /* Mangle.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Mangle.h; path = lib/CodeGen/Mangle.h; sourceTree = ""; tabWidth = 2; }; - 1A2A54A50FD1DD1C00F4CE45 /* ASTConsumers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ASTConsumers.cpp; path = lib/Frontend/ASTConsumers.cpp; sourceTree = ""; tabWidth = 2; }; - 1A2A54A70FD1DD1C00F4CE45 /* CacheTokens.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CacheTokens.cpp; path = lib/Frontend/CacheTokens.cpp; sourceTree = ""; }; - 1A2A54A80FD1DD1C00F4CE45 /* DependencyFile.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DependencyFile.cpp; path = lib/Frontend/DependencyFile.cpp; sourceTree = ""; }; - 1A2A54A90FD1DD1C00F4CE45 /* DiagChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DiagChecker.cpp; path = lib/Frontend/DiagChecker.cpp; sourceTree = ""; }; - 1A2A54AA0FD1DD1C00F4CE45 /* DocumentXML.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DocumentXML.cpp; path = lib/Frontend/DocumentXML.cpp; sourceTree = ""; }; - 1A2A54AE0FD1DD1C00F4CE45 /* PrintPreprocessedOutput.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PrintPreprocessedOutput.cpp; path = lib/Frontend/PrintPreprocessedOutput.cpp; sourceTree = ""; }; - 1A2A54B30FD1DD1C00F4CE45 /* StmtXML.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = StmtXML.cpp; path = lib/Frontend/StmtXML.cpp; sourceTree = ""; }; - 1A2A54B40FD1DD1C00F4CE45 /* Warnings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Warnings.cpp; path = lib/Frontend/Warnings.cpp; sourceTree = ""; }; - 1A30A9E80B93A4C800201A91 /* ExprCXX.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ExprCXX.h; path = clang/AST/ExprCXX.h; sourceTree = ""; tabWidth = 2; }; - 1A31B27210ACE6DA009E0C8B /* GlobalDecl.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = GlobalDecl.h; path = lib/CodeGen/GlobalDecl.h; sourceTree = ""; tabWidth = 2; }; - 1A376A2C0D4AED9B002A1C52 /* CGExprConstant.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGExprConstant.cpp; path = lib/CodeGen/CGExprConstant.cpp; sourceTree = ""; tabWidth = 2; }; - 1A3D2C4D12A2CD3D0088C44A /* CGCXXABI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CGCXXABI.cpp; path = lib/CodeGen/CGCXXABI.cpp; sourceTree = ""; }; - 1A471AB40F437BC500753CE8 /* CGBlocks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGBlocks.cpp; path = lib/CodeGen/CGBlocks.cpp; sourceTree = ""; tabWidth = 2; }; - 1A4C41BE105B4C0B0047B5E7 /* CGClass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGClass.cpp; path = lib/CodeGen/CGClass.cpp; sourceTree = ""; tabWidth = 2; }; - 1A535EDB107BC47B000C3AE7 /* CanonicalType.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CanonicalType.h; path = clang/AST/CanonicalType.h; sourceTree = ""; tabWidth = 2; }; - 1A5D5E570E5E81010023C059 /* CGCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGCXX.cpp; path = lib/CodeGen/CGCXX.cpp; sourceTree = ""; tabWidth = 2; }; - 1A621BB5110FE6AA009E6834 /* TargetInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = TargetInfo.cpp; path = lib/CodeGen/TargetInfo.cpp; sourceTree = ""; tabWidth = 2; }; - 1A621BB6110FE6AA009E6834 /* TargetInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TargetInfo.h; path = lib/CodeGen/TargetInfo.h; sourceTree = ""; tabWidth = 2; }; - 1A621C3A11111D61009E6834 /* CIndexCodeCompletion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CIndexCodeCompletion.cpp; path = tools/CIndex/CIndexCodeCompletion.cpp; sourceTree = ""; }; - 1A621C3B11111D61009E6834 /* CIndexer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CIndexer.cpp; path = tools/CIndex/CIndexer.cpp; sourceTree = ""; }; - 1A621C3C11111D61009E6834 /* CIndexer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CIndexer.h; path = tools/CIndex/CIndexer.h; sourceTree = ""; }; - 1A621C3D11111D61009E6834 /* CIndexInclusionStack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CIndexInclusionStack.cpp; path = tools/CIndex/CIndexInclusionStack.cpp; sourceTree = ""; }; - 1A621C3E11111D61009E6834 /* CIndexUSRs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CIndexUSRs.cpp; path = tools/CIndex/CIndexUSRs.cpp; sourceTree = ""; }; - 1A621C3F11111D61009E6834 /* CXCursor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CXCursor.cpp; path = tools/CIndex/CXCursor.cpp; sourceTree = ""; }; - 1A621C4011111D61009E6834 /* CXCursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CXCursor.h; path = tools/CIndex/CXCursor.h; sourceTree = ""; }; - 1A621C4111111D61009E6834 /* CXSourceLocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CXSourceLocation.h; path = tools/CIndex/CXSourceLocation.h; sourceTree = ""; }; - 1A649E1D0F9599D9005B965E /* CGBlocks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CGBlocks.h; path = lib/CodeGen/CGBlocks.h; sourceTree = ""; }; - 1A649E1E0F9599DA005B965E /* CGCXX.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CGCXX.h; path = lib/CodeGen/CGCXX.h; sourceTree = ""; tabWidth = 2; }; - 1A6B6CD110693FC900BB4A8F /* CodeCompleteConsumer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CodeCompleteConsumer.cpp; path = lib/Sema/CodeCompleteConsumer.cpp; sourceTree = ""; tabWidth = 2; }; - 1A6B6CD210693FC900BB4A8F /* SemaCodeComplete.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaCodeComplete.cpp; path = lib/Sema/SemaCodeComplete.cpp; sourceTree = ""; tabWidth = 2; }; - 1A6B6E991069833600BB4A8F /* CGExprCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGExprCXX.cpp; path = lib/CodeGen/CGExprCXX.cpp; sourceTree = ""; tabWidth = 2; }; - 1A6C01F6108128710072DEE4 /* CGRTTI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGRTTI.cpp; path = lib/CodeGen/CGRTTI.cpp; sourceTree = ""; tabWidth = 2; }; - 1A6FE7080FD6F85800E00CA9 /* CGTemporaries.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGTemporaries.cpp; path = lib/CodeGen/CGTemporaries.cpp; sourceTree = ""; tabWidth = 2; }; - 1A7019E90F79BC1100FEC4D1 /* DiagnosticAnalysisKinds.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticAnalysisKinds.td; sourceTree = ""; }; - 1A7019EA0F79BC1100FEC4D1 /* DiagnosticASTKinds.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticASTKinds.td; sourceTree = ""; }; - 1A7019EB0F79BC1100FEC4D1 /* DiagnosticCommonKinds.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticCommonKinds.td; sourceTree = ""; }; - 1A7019EC0F79BC1100FEC4D1 /* DiagnosticDriverKinds.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticDriverKinds.td; sourceTree = ""; }; - 1A7019ED0F79BC1100FEC4D1 /* DiagnosticFrontendKinds.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticFrontendKinds.td; sourceTree = ""; }; - 1A7019EE0F79BC1100FEC4D1 /* DiagnosticLexKinds.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticLexKinds.td; sourceTree = ""; }; - 1A7019EF0F79BC1100FEC4D1 /* DiagnosticParseKinds.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticParseKinds.td; sourceTree = ""; }; - 1A701A250F79CE1C00FEC4D1 /* DiagnosticSemaKinds.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticSemaKinds.td; sourceTree = ""; }; - 1A701B630F7C8FE400FEC4D1 /* SemaAccess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaAccess.cpp; path = lib/Sema/SemaAccess.cpp; sourceTree = ""; tabWidth = 2; }; - 1A72BEAC0D641E9400B085E9 /* Attr.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Attr.h; path = clang/AST/Attr.h; sourceTree = ""; tabWidth = 2; }; - 1A7342470C7B57D500122F56 /* CGObjC.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGObjC.cpp; path = lib/CodeGen/CGObjC.cpp; sourceTree = ""; tabWidth = 2; }; - 1A81AA18108144F40094E50B /* CGVTables.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGVTables.cpp; path = lib/CodeGen/CGVTables.cpp; sourceTree = ""; tabWidth = 2; }; - 1A81AA5D108278A20094E50B /* CGVTables.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CGVTables.h; path = lib/CodeGen/CGVTables.h; sourceTree = ""; tabWidth = 2; }; - 1A869A6E0BA2164C008DA07A /* LiteralSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LiteralSupport.h; sourceTree = ""; }; - 1A869AA70BA21ABA008DA07A /* LiteralSupport.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = LiteralSupport.cpp; sourceTree = ""; }; - 1A97825A1108BA18002B98FC /* CGVTT.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGVTT.cpp; path = lib/CodeGen/CGVTT.cpp; sourceTree = ""; tabWidth = 2; }; - 1A986AB610D0746D00A8EA9E /* CGDeclCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGDeclCXX.cpp; path = lib/CodeGen/CGDeclCXX.cpp; sourceTree = ""; tabWidth = 2; }; - 1AA1D35611BECFF70089CC3F /* CC1AsOptions.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = CC1AsOptions.td; path = clang/Driver/CC1AsOptions.td; sourceTree = ""; }; - 1AA1D35711BECFF70089CC3F /* CC1Options.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = CC1Options.td; path = clang/Driver/CC1Options.td; sourceTree = ""; }; - 1AA1D35811BECFF70089CC3F /* Options.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Options.td; path = clang/Driver/Options.td; sourceTree = ""; }; - 1AA1D35911BECFF70089CC3F /* OptParser.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = OptParser.td; path = clang/Driver/OptParser.td; sourceTree = ""; }; - 1AA963AB10D8576800786C86 /* FullExpr.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = FullExpr.h; path = clang/AST/FullExpr.h; sourceTree = ""; tabWidth = 2; }; - 1AB290021045858B00FE33D8 /* PartialDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = PartialDiagnostic.h; sourceTree = ""; tabWidth = 2; }; - 1ABC36930C7A4BDC006DB0AB /* CGBuiltin.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGBuiltin.cpp; path = lib/CodeGen/CGBuiltin.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B11182449800A48E65 /* APValue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = APValue.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B21182449800A48E65 /* ASTConsumer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ASTConsumer.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B31182449800A48E65 /* ASTContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ASTContext.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B41182449800A48E65 /* ASTDiagnostic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ASTDiagnostic.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B51182449800A48E65 /* ASTImporter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ASTImporter.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B61182449800A48E65 /* AttrImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = AttrImpl.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B71182449800A48E65 /* CXXInheritance.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CXXInheritance.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B81182449800A48E65 /* Decl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Decl.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23B91182449800A48E65 /* DeclarationName.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DeclarationName.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23BA1182449800A48E65 /* DeclBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DeclBase.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23BB1182449800A48E65 /* DeclCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DeclCXX.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23BC1182449800A48E65 /* DeclFriend.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DeclFriend.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23BD1182449800A48E65 /* DeclGroup.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DeclGroup.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23BE1182449800A48E65 /* DeclObjC.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DeclObjC.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23BF1182449800A48E65 /* DeclPrinter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DeclPrinter.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C01182449800A48E65 /* DeclTemplate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DeclTemplate.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C11182449800A48E65 /* Expr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Expr.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C21182449800A48E65 /* ExprConstant.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ExprConstant.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C31182449800A48E65 /* ExprCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ExprCXX.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C41182449800A48E65 /* FullExpr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = FullExpr.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C51182449800A48E65 /* InheritViz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = InheritViz.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C61182449800A48E65 /* NestedNameSpecifier.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = NestedNameSpecifier.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C71182449800A48E65 /* ParentMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ParentMap.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C81182449800A48E65 /* RecordLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = RecordLayout.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23C91182449800A48E65 /* RecordLayoutBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = RecordLayoutBuilder.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23CB1182449800A48E65 /* Stmt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Stmt.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23CC1182449800A48E65 /* StmtDumper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = StmtDumper.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23CD1182449800A48E65 /* StmtIterator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = StmtIterator.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23CE1182449800A48E65 /* StmtPrinter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = StmtPrinter.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23CF1182449800A48E65 /* StmtProfile.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = StmtProfile.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23D01182449800A48E65 /* StmtViz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = StmtViz.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23D11182449800A48E65 /* TemplateBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = TemplateBase.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23D21182449800A48E65 /* TemplateName.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = TemplateName.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23D31182449800A48E65 /* Type.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Type.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23D41182449800A48E65 /* TypeLoc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = TypeLoc.cpp; sourceTree = ""; tabWidth = 2; }; - 1ABD23D51182449800A48E65 /* TypePrinter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = TypePrinter.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67212999D8E006FBC77 /* AnalysisContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = AnalysisContext.cpp; path = lib/Analysis/AnalysisContext.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67312999D8E006FBC77 /* CFG.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CFG.cpp; path = lib/Analysis/CFG.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67412999D8E006FBC77 /* CFGStmtMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CFGStmtMap.cpp; path = lib/Analysis/CFGStmtMap.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67512999D8E006FBC77 /* FormatString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = FormatString.cpp; path = lib/Analysis/FormatString.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67612999D8E006FBC77 /* FormatStringParsing.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = FormatStringParsing.h; path = lib/Analysis/FormatStringParsing.h; sourceTree = ""; tabWidth = 2; }; - 1AC1A67712999D8E006FBC77 /* LiveVariables.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = LiveVariables.cpp; path = lib/Analysis/LiveVariables.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67812999D8E006FBC77 /* PrintfFormatString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = PrintfFormatString.cpp; path = lib/Analysis/PrintfFormatString.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67912999D8E006FBC77 /* PseudoConstantAnalysis.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = PseudoConstantAnalysis.cpp; path = lib/Analysis/PseudoConstantAnalysis.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67A12999D8E006FBC77 /* ReachableCode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ReachableCode.cpp; path = lib/Analysis/ReachableCode.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67B12999D8E006FBC77 /* ScanfFormatString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ScanfFormatString.cpp; path = lib/Analysis/ScanfFormatString.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A67C12999D8E006FBC77 /* UninitializedValues.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = UninitializedValues.cpp; path = lib/Analysis/UninitializedValues.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6881299A284006FBC77 /* AdjustedReturnValueChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = AdjustedReturnValueChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6891299A284006FBC77 /* AggExprVisitor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = AggExprVisitor.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A68A1299A284006FBC77 /* AnalysisConsumer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = AnalysisConsumer.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A68B1299A284006FBC77 /* AnalysisManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = AnalysisManager.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A68C1299A284006FBC77 /* AnalyzerStatsChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = AnalyzerStatsChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A68D1299A284006FBC77 /* ArrayBoundChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ArrayBoundChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A68E1299A284006FBC77 /* AttrNonNullChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = AttrNonNullChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A68F1299A284006FBC77 /* BasicConstraintManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = BasicConstraintManager.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6901299A284006FBC77 /* BasicObjCFoundationChecks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = BasicObjCFoundationChecks.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6911299A284006FBC77 /* BasicObjCFoundationChecks.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = BasicObjCFoundationChecks.h; sourceTree = ""; tabWidth = 2; }; - 1AC1A6921299A284006FBC77 /* BasicStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = BasicStore.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6931299A284006FBC77 /* BasicValueFactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = BasicValueFactory.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6941299A284006FBC77 /* BugReporter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = BugReporter.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6951299A284006FBC77 /* BugReporterVisitors.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = BugReporterVisitors.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6961299A284006FBC77 /* BuiltinFunctionChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = BuiltinFunctionChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6971299A284006FBC77 /* CallAndMessageChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CallAndMessageChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6981299A284006FBC77 /* CastSizeChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CastSizeChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6991299A284006FBC77 /* CastToStructChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CastToStructChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A69A1299A284006FBC77 /* CFRefCount.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CFRefCount.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A69B1299A284006FBC77 /* CheckDeadStores.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CheckDeadStores.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A69C1299A284006FBC77 /* Checker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Checker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A69D1299A284006FBC77 /* CheckerHelpers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CheckerHelpers.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A69E1299A284006FBC77 /* CheckObjCDealloc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CheckObjCDealloc.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A69F1299A284006FBC77 /* CheckObjCInstMethSignature.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CheckObjCInstMethSignature.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6A01299A284006FBC77 /* CheckSecuritySyntaxOnly.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CheckSecuritySyntaxOnly.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6A11299A284006FBC77 /* CheckSizeofPointer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CheckSizeofPointer.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6A21299A284006FBC77 /* ChrootChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ChrootChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6A41299A284006FBC77 /* CocoaConventions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CocoaConventions.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A6A51299A284006FBC77 /* CStringChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = CStringChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7DC1299A285006FBC77 /* DereferenceChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DereferenceChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7DD1299A285006FBC77 /* DivZeroChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = DivZeroChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7DE1299A285006FBC77 /* Environment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Environment.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7DF1299A285006FBC77 /* ExplodedGraph.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ExplodedGraph.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E01299A285006FBC77 /* FixedAddressChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = FixedAddressChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E11299A285006FBC77 /* FlatStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = FlatStore.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E21299A285006FBC77 /* FrontendActions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = FrontendActions.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E31299A285006FBC77 /* GRBlockCounter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = GRBlockCounter.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E41299A285006FBC77 /* GRCoreEngine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = GRCoreEngine.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E51299A285006FBC77 /* GRCXXExprEngine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = GRCXXExprEngine.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E61299A285006FBC77 /* GRExprEngine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = GRExprEngine.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E71299A285006FBC77 /* GRExprEngineExperimentalChecks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = GRExprEngineExperimentalChecks.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E81299A285006FBC77 /* GRExprEngineExperimentalChecks.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = GRExprEngineExperimentalChecks.h; sourceTree = ""; tabWidth = 2; }; - 1AC1A7E91299A285006FBC77 /* GRExprEngineInternalChecks.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = GRExprEngineInternalChecks.h; sourceTree = ""; tabWidth = 2; }; - 1AC1A7EA1299A285006FBC77 /* GRState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = GRState.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7EB1299A285006FBC77 /* HTMLDiagnostics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLDiagnostics.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7EC1299A285006FBC77 /* IdempotentOperationChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = IdempotentOperationChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7ED1299A285006FBC77 /* LLVMConventionsChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = LLVMConventionsChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7EE1299A285006FBC77 /* MacOSXAPIChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = MacOSXAPIChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F01299A285006FBC77 /* MallocChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = MallocChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F11299A285006FBC77 /* ManagerRegistry.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ManagerRegistry.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F21299A285006FBC77 /* MemRegion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = MemRegion.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F31299A285006FBC77 /* NoReturnFunctionChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = NoReturnFunctionChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F41299A285006FBC77 /* NSAutoreleasePoolChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = NSAutoreleasePoolChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F51299A285006FBC77 /* NSErrorChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = NSErrorChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F61299A285006FBC77 /* ObjCAtSyncChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ObjCAtSyncChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F71299A285006FBC77 /* ObjCUnusedIVarsChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ObjCUnusedIVarsChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F81299A285006FBC77 /* OSAtomicChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = OSAtomicChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7F91299A285006FBC77 /* PathDiagnostic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = PathDiagnostic.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7FA1299A285006FBC77 /* PlistDiagnostics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = PlistDiagnostics.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7FB1299A285006FBC77 /* PointerArithChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = PointerArithChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7FC1299A285006FBC77 /* PointerSubChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = PointerSubChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7FD1299A285006FBC77 /* PthreadLockChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = PthreadLockChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A7FE1299A285006FBC77 /* RangeConstraintManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = RangeConstraintManager.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A8001299A285006FBC77 /* RegionStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = RegionStore.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9DB1299A287006FBC77 /* ReturnPointerRangeChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ReturnPointerRangeChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9DC1299A287006FBC77 /* ReturnUndefChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ReturnUndefChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9DD1299A287006FBC77 /* SimpleConstraintManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleConstraintManager.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9DE1299A287006FBC77 /* SimpleConstraintManager.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = SimpleConstraintManager.h; sourceTree = ""; tabWidth = 2; }; - 1AC1A9DF1299A287006FBC77 /* SimpleSValuator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleSValuator.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E01299A287006FBC77 /* StackAddrLeakChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = StackAddrLeakChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E11299A287006FBC77 /* Store.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Store.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E21299A287006FBC77 /* StreamChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = StreamChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E31299A287006FBC77 /* SVals.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = SVals.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E41299A287006FBC77 /* SValuator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = SValuator.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E51299A287006FBC77 /* SymbolManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = SymbolManager.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E61299A287006FBC77 /* UndefBranchChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = UndefBranchChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E71299A287006FBC77 /* UndefCapturedBlockVarChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = UndefCapturedBlockVarChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E81299A287006FBC77 /* UndefinedArraySubscriptChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = UndefinedArraySubscriptChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9E91299A287006FBC77 /* UndefinedAssignmentChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = UndefinedAssignmentChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9EA1299A287006FBC77 /* UndefResultChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = UndefResultChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9EB1299A287006FBC77 /* UnixAPIChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = UnixAPIChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9EC1299A287006FBC77 /* UnreachableCodeChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = UnreachableCodeChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9ED1299A287006FBC77 /* ValueManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ValueManager.cpp; sourceTree = ""; tabWidth = 2; }; - 1AC1A9EE1299A287006FBC77 /* VLASizeChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = VLASizeChecker.cpp; sourceTree = ""; tabWidth = 2; }; - 1ACB57DB1105820D0047B991 /* CompilerInstance.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CompilerInstance.cpp; path = lib/Frontend/CompilerInstance.cpp; sourceTree = ""; }; - 1ACB57DC1105820D0047B991 /* CompilerInvocation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CompilerInvocation.cpp; path = lib/Frontend/CompilerInvocation.cpp; sourceTree = ""; }; - 1ACB57DD1105820D0047B991 /* DeclXML.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DeclXML.cpp; path = lib/Frontend/DeclXML.cpp; sourceTree = ""; }; - 1ACB57DE1105820D0047B991 /* FrontendAction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FrontendAction.cpp; path = lib/Frontend/FrontendAction.cpp; sourceTree = ""; }; - 1ACB57DF1105820D0047B991 /* FrontendActions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FrontendActions.cpp; path = lib/Frontend/FrontendActions.cpp; sourceTree = ""; }; - 1ACB57E01105820D0047B991 /* FrontendOptions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FrontendOptions.cpp; path = lib/Frontend/FrontendOptions.cpp; sourceTree = ""; }; - 1ACB57E11105820D0047B991 /* LangStandards.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LangStandards.cpp; path = lib/Frontend/LangStandards.cpp; sourceTree = ""; }; - 1ACB57E21105820D0047B991 /* TypeXML.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TypeXML.cpp; path = lib/Frontend/TypeXML.cpp; sourceTree = ""; }; - 1ACB57E31105820D0047B991 /* VerifyDiagnosticsClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = VerifyDiagnosticsClient.cpp; path = lib/Frontend/VerifyDiagnosticsClient.cpp; sourceTree = ""; }; - 1ADF47AE0F782C3200E48A8A /* SemaTemplateInstantiateDecl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaTemplateInstantiateDecl.cpp; path = lib/Sema/SemaTemplateInstantiateDecl.cpp; sourceTree = ""; tabWidth = 2; }; - 1AE4EE3B103B89CA00888A23 /* TreeTransform.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TreeTransform.h; path = lib/Sema/TreeTransform.h; sourceTree = ""; tabWidth = 2; }; - 1AECEFAF12DE387800F1D539 /* AnalysisContext.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = AnalysisContext.h; path = clang/Analysis/AnalysisContext.h; sourceTree = ""; tabWidth = 2; }; - 1AECEFB012DE387800F1D539 /* CFG.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CFG.h; path = clang/Analysis/CFG.h; sourceTree = ""; tabWidth = 2; }; - 1AECEFB112DE387800F1D539 /* CFGStmtMap.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CFGStmtMap.h; path = clang/Analysis/CFGStmtMap.h; sourceTree = ""; tabWidth = 2; }; - 1AF1B50E109A4FB800AFAFAC /* CGException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGException.cpp; path = lib/CodeGen/CGException.cpp; sourceTree = ""; tabWidth = 2; }; - 1AFDD8701161085D00AE030A /* ASTMerge.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ASTMerge.cpp; path = lib/Frontend/ASTMerge.cpp; sourceTree = ""; }; - 1AFF8AE11012BFC900D248DA /* CGRecordLayoutBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGRecordLayoutBuilder.cpp; path = lib/CodeGen/CGRecordLayoutBuilder.cpp; sourceTree = ""; tabWidth = 2; }; - 352246E20F5C6BE000D0D279 /* InitHeaderSearch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = InitHeaderSearch.cpp; path = lib/Frontend/InitHeaderSearch.cpp; sourceTree = ""; }; - 352246E50F5C6BE000D0D279 /* TextDiagnosticBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TextDiagnosticBuffer.cpp; path = lib/Frontend/TextDiagnosticBuffer.cpp; sourceTree = ""; }; - 352246E60F5C6BE000D0D279 /* TextDiagnosticPrinter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TextDiagnosticPrinter.cpp; path = lib/Frontend/TextDiagnosticPrinter.cpp; sourceTree = ""; }; - 352712500DAFE54700C76352 /* IdentifierResolver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = IdentifierResolver.cpp; path = lib/Sema/IdentifierResolver.cpp; sourceTree = ""; tabWidth = 2; }; - 352C19DC0CA321C80045DB98 /* CFGRecStmtDeclVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CFGRecStmtDeclVisitor.h; path = clang/Analysis/Visitors/CFGRecStmtDeclVisitor.h; sourceTree = ""; }; - 352C19DD0CA321C80045DB98 /* CFGRecStmtVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CFGRecStmtVisitor.h; path = clang/Analysis/Visitors/CFGRecStmtVisitor.h; sourceTree = ""; }; - 352C19DE0CA321C80045DB98 /* CFGStmtVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CFGStmtVisitor.h; path = clang/Analysis/Visitors/CFGStmtVisitor.h; sourceTree = ""; }; - 352C19DF0CA321C80045DB98 /* CFGVarDeclVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CFGVarDeclVisitor.h; path = clang/Analysis/Visitors/CFGVarDeclVisitor.h; sourceTree = ""; }; - 3534A01C0E129849002709B2 /* ParseCXXInlineMethods.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseCXXInlineMethods.cpp; path = lib/Parse/ParseCXXInlineMethods.cpp; sourceTree = ""; tabWidth = 2; }; - 3536457C0E2406B0009C6509 /* Environment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Environment.h; path = clang/Analysis/PathSensitive/Environment.h; sourceTree = ""; }; - 3537AA0C0ECD088F008F7CDC /* BlkExprDeclBitVector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BlkExprDeclBitVector.h; path = clang/Analysis/Support/BlkExprDeclBitVector.h; sourceTree = ""; }; - 3537AA0D0ECD08A4008F7CDC /* PreprocessorLexer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PreprocessorLexer.cpp; sourceTree = ""; }; - 3538FDB60ED24A2C005EC283 /* DeclarationName.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclarationName.h; path = clang/AST/DeclarationName.h; sourceTree = ""; tabWidth = 2; }; - 353959D40EE5F88A00E82461 /* ParseTemplate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseTemplate.cpp; path = lib/Parse/ParseTemplate.cpp; sourceTree = ""; tabWidth = 2; }; - 3547129D0C88881300B3E1D5 /* PrettyPrinter.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = PrettyPrinter.h; path = clang/AST/PrettyPrinter.h; sourceTree = ""; tabWidth = 2; }; - 35475B1F0E79973F0000BFE4 /* CGCall.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGCall.cpp; path = lib/CodeGen/CGCall.cpp; sourceTree = ""; tabWidth = 2; }; - 35475B220E7997680000BFE4 /* CGCall.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CGCall.h; path = lib/CodeGen/CGCall.h; sourceTree = ""; tabWidth = 2; }; - 35475B230E7997680000BFE4 /* CGValue.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CGValue.h; path = lib/CodeGen/CGValue.h; sourceTree = ""; tabWidth = 2; }; - 355106880E9A851B006A4E44 /* MemRegion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MemRegion.h; path = clang/Analysis/PathSensitive/MemRegion.h; sourceTree = ""; }; - 3551068A0E9A8546006A4E44 /* ParsePragma.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParsePragma.cpp; path = lib/Parse/ParsePragma.cpp; sourceTree = ""; tabWidth = 2; }; - 3551068B0E9A8546006A4E44 /* ParseTentative.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseTentative.cpp; path = lib/Parse/ParseTentative.cpp; sourceTree = ""; tabWidth = 2; }; - 3551068F0E9A857C006A4E44 /* ParsePragma.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ParsePragma.h; path = lib/Parse/ParsePragma.h; sourceTree = ""; tabWidth = 2; }; - 3552E7540E520D80003A8CA5 /* PPCaching.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PPCaching.cpp; sourceTree = ""; }; - 3552E7580E520DD7003A8CA5 /* CGObjCMac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGObjCMac.cpp; path = lib/CodeGen/CGObjCMac.cpp; sourceTree = ""; tabWidth = 2; }; - 3553EB9A0E5F7089007D7359 /* GRStateTrait.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRStateTrait.h; path = clang/Analysis/PathSensitive/GRStateTrait.h; sourceTree = ""; }; - 35544B8B0F5C803200D92AA9 /* SemaTemplateInstantiate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaTemplateInstantiate.cpp; path = lib/Sema/SemaTemplateInstantiate.cpp; sourceTree = ""; tabWidth = 2; }; - 35585DBE0EAFBC4500D0A97A /* SemaOverload.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaOverload.cpp; path = lib/Sema/SemaOverload.cpp; sourceTree = ""; tabWidth = 2; }; - 3558F76F0E267C9A00A5B0DF /* Store.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Store.h; path = clang/Analysis/PathSensitive/Store.h; sourceTree = ""; }; - 35707EFD0CD0F5CC000B2204 /* SourceLocation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = SourceLocation.cpp; sourceTree = ""; tabWidth = 2; }; - 357EA27C0F2526F300439B60 /* SemaLookup.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaLookup.cpp; path = lib/Sema/SemaLookup.cpp; sourceTree = ""; tabWidth = 2; }; - 35847BE30CC7DB9000C40FFF /* StmtIterator.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = StmtIterator.h; path = clang/AST/StmtIterator.h; sourceTree = ""; tabWidth = 2; }; - 358D23090E8BEB850003DDCC /* DeclGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclGroup.h; path = clang/AST/DeclGroup.h; sourceTree = ""; tabWidth = 2; }; - 358F514F0E529A87007F2102 /* GRState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRState.h; path = clang/Analysis/PathSensitive/GRState.h; sourceTree = ""; }; - 3591853E0EFB1088000039AF /* SemaTemplate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaTemplate.cpp; path = lib/Sema/SemaTemplate.cpp; sourceTree = ""; tabWidth = 2; }; - 359378FF0DA486490043B19C /* BugReporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BugReporter.h; path = clang/Analysis/PathSensitive/BugReporter.h; sourceTree = ""; }; - 3598EBEB0EDE23EF0070CA16 /* PTHManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHManager.h; sourceTree = ""; }; - 3599299A0DE2425300A8A33E /* SemaInit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaInit.cpp; path = lib/Sema/SemaInit.cpp; sourceTree = ""; tabWidth = 2; }; - 35A057D20EAE2D2B0069249F /* SVals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SVals.h; path = clang/Analysis/PathSensitive/SVals.h; sourceTree = ""; }; - 35A3E7000DD3874400757F74 /* CGDebugInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGDebugInfo.cpp; path = lib/CodeGen/CGDebugInfo.cpp; sourceTree = ""; tabWidth = 2; wrapsLines = 1; }; - 35A3E7010DD3874400757F74 /* CGDebugInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CGDebugInfo.h; path = lib/CodeGen/CGDebugInfo.h; sourceTree = ""; tabWidth = 2; }; - 35A8FCF60D9B4ADD001C2F97 /* ProgramPoint.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ProgramPoint.h; path = clang/Analysis/ProgramPoint.h; sourceTree = ""; tabWidth = 2; }; - 35B820740ECB811A0020BEC0 /* PreprocessorLexer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PreprocessorLexer.h; sourceTree = ""; }; - 35BFBD2B0C9EDE1E006CB644 /* ASTConsumer.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ASTConsumer.h; path = clang/AST/ASTConsumer.h; sourceTree = ""; tabWidth = 2; }; - 35CEA05A0DF9E82700A41296 /* ExprObjC.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ExprObjC.h; path = clang/AST/ExprObjC.h; sourceTree = ""; tabWidth = 2; }; - 35CFFE010CA1CBDD00E6F2BE /* StmtGraphTraits.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = StmtGraphTraits.h; path = clang/AST/StmtGraphTraits.h; sourceTree = ""; tabWidth = 2; }; - 35D1DDD10CA9C6D50096E967 /* DataflowSolver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DataflowSolver.h; path = clang/Analysis/FlowSensitive/DataflowSolver.h; sourceTree = ""; }; - 35D1DDD20CA9C6D50096E967 /* DataflowValues.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DataflowValues.h; path = clang/Analysis/FlowSensitive/DataflowValues.h; sourceTree = ""; }; - 35D55B290D81D8E50092E734 /* BasicValueFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BasicValueFactory.h; path = clang/Analysis/PathSensitive/BasicValueFactory.h; sourceTree = ""; }; - 35E194670ECB82FB00F21733 /* SemaCXXScopeSpec.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaCXXScopeSpec.cpp; path = lib/Sema/SemaCXXScopeSpec.cpp; sourceTree = ""; tabWidth = 2; }; - 35E194680ECB82FB00F21733 /* SemaCXXCast.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaCXXCast.cpp; path = lib/Sema/SemaCXXCast.cpp; sourceTree = ""; tabWidth = 2; }; - 35E1946C0ECB83C100F21733 /* PTHLexer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PTHLexer.cpp; sourceTree = ""; }; - 35EE48AD0E0C4CB200715C54 /* DeclCXX.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclCXX.h; path = clang/AST/DeclCXX.h; sourceTree = ""; tabWidth = 2; }; - 35EE48AE0E0C4CB200715C54 /* ParentMap.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ParentMap.h; path = clang/AST/ParentMap.h; sourceTree = ""; tabWidth = 2; }; - 35EF676F0DAD1D2C00B19414 /* SemaDeclCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaDeclCXX.cpp; path = lib/Sema/SemaDeclCXX.cpp; sourceTree = ""; tabWidth = 2; }; - 35F1ACE60E66166C001F4532 /* ConstraintManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ConstraintManager.h; path = clang/Analysis/PathSensitive/ConstraintManager.h; sourceTree = ""; }; - 35F2BE7B0DAC2963006E7668 /* HTMLRewrite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HTMLRewrite.h; path = clang/Rewrite/HTMLRewrite.h; sourceTree = ""; }; - 35F8D0CA0D9B7E8200D91C5E /* GRSimpleAPICheck.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRSimpleAPICheck.h; path = clang/Analysis/PathSensitive/GRSimpleAPICheck.h; sourceTree = ""; }; - 35F8D0CB0D9B7E8200D91C5E /* GRAuditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRAuditor.h; path = clang/Analysis/PathSensitive/GRAuditor.h; sourceTree = ""; }; - 35F9B1550D1C6B2E00DDFDAE /* LiveVariables.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LiveVariables.h; path = clang/Analysis/Analyses/LiveVariables.h; sourceTree = ""; }; - 35F9B1560D1C6B2E00DDFDAE /* UninitializedValues.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UninitializedValues.h; path = clang/Analysis/Analyses/UninitializedValues.h; sourceTree = ""; }; - 574F4C25121B4EF000AEAC20 /* ASTWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTWriter.h; path = clang/Serialization/ASTWriter.h; sourceTree = ""; }; - 57AA924D121C8B9400B4AA6C /* ASTReader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ASTReader.cpp; sourceTree = ""; }; - 57AA924E121C8B9400B4AA6C /* ASTReaderDecl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ASTReaderDecl.cpp; sourceTree = ""; }; - 57AA924F121C8B9400B4AA6C /* ASTReaderStmt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ASTReaderStmt.cpp; sourceTree = ""; }; - 57E15B21121C8D2B0051C2CC /* ASTDeserializationListener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTDeserializationListener.h; path = clang/Serialization/ASTDeserializationListener.h; sourceTree = ""; }; - 57E15B22121C8D2B0051C2CC /* ASTReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTReader.h; path = clang/Serialization/ASTReader.h; sourceTree = ""; }; - 57F6660F121B4DE600DCE3B7 /* ASTWriter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ASTWriter.cpp; sourceTree = ""; }; - 57F66610121B4DE600DCE3B7 /* ASTWriterDecl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ASTWriterDecl.cpp; sourceTree = ""; }; - 57F66611121B4DE600DCE3B7 /* ASTWriterStmt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ASTWriterStmt.cpp; sourceTree = ""; }; - 72D16C1E0D9975C400E6DA4A /* HTMLRewrite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = HTMLRewrite.cpp; path = lib/Rewrite/HTMLRewrite.cpp; sourceTree = ""; }; - 84AF36A00CB17A3B00C820A5 /* DeclObjC.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclObjC.h; path = clang/AST/DeclObjC.h; sourceTree = ""; tabWidth = 2; }; - 8DD76F6C0486A84900D96B5E /* clang */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = clang; sourceTree = BUILT_PRODUCTS_DIR; }; - 9012911510470FCE0083456D /* Index.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Index.h; path = "clang-c/Index.h"; sourceTree = ""; }; - 9012911C1048068D0083456D /* ASTUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ASTUnit.cpp; path = lib/Frontend/ASTUnit.cpp; sourceTree = ""; }; - 9012911F104812F90083456D /* CIndex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CIndex.cpp; path = tools/CIndex/CIndex.cpp; sourceTree = ""; }; - 904753791096376F00CBDDDD /* CXXInheritance.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CXXInheritance.h; path = clang/AST/CXXInheritance.h; sourceTree = ""; tabWidth = 2; }; - 9047537A1096376F00CBDDDD /* Redeclarable.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Redeclarable.h; path = clang/AST/Redeclarable.h; sourceTree = ""; tabWidth = 2; }; - 9047537B1096376F00CBDDDD /* TypeLoc.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TypeLoc.h; path = clang/AST/TypeLoc.h; sourceTree = ""; tabWidth = 2; }; - 9047537C1096376F00CBDDDD /* TypeLocBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TypeLocBuilder.h; path = clang/AST/TypeLocBuilder.h; sourceTree = ""; tabWidth = 2; }; - 9047537D1096376F00CBDDDD /* TypeLocNodes.def */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = text; name = TypeLocNodes.def; path = clang/AST/TypeLocNodes.def; sourceTree = ""; tabWidth = 2; }; - 9047537E1096376F00CBDDDD /* TypeLocVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TypeLocVisitor.h; path = clang/AST/TypeLocVisitor.h; sourceTree = ""; tabWidth = 2; }; - 9047537F1096376F00CBDDDD /* TypeVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TypeVisitor.h; path = clang/AST/TypeVisitor.h; sourceTree = ""; tabWidth = 2; }; - 9063F2280F9E911F002F7251 /* OnDiskHashTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OnDiskHashTable.h; sourceTree = ""; }; - 9063F2290F9E911F002F7251 /* SourceManagerInternals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceManagerInternals.h; sourceTree = ""; }; - 9063F22A0F9E911F002F7251 /* TemplateKinds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TemplateKinds.h; sourceTree = ""; }; - 906BF4AE0F83BA16001071FA /* ConvertUTF.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConvertUTF.h; sourceTree = ""; }; - 906BF4AF0F83BA2E001071FA /* ConvertUTF.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ConvertUTF.c; sourceTree = ""; }; - 90F9EFA9104ABDED00D09A15 /* c-index-test.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "c-index-test.c"; path = "tools/c-index-test/c-index-test.c"; sourceTree = ""; }; - 90FB99DE0F98FB1D008F9415 /* DeclContextInternals.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclContextInternals.h; path = clang/AST/DeclContextInternals.h; sourceTree = ""; tabWidth = 2; }; - 90FB99DF0F98FB1D008F9415 /* DeclVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclVisitor.h; path = clang/AST/DeclVisitor.h; sourceTree = ""; tabWidth = 2; }; - 90FB99E00F98FB1D008F9415 /* ExternalASTSource.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ExternalASTSource.h; path = clang/AST/ExternalASTSource.h; sourceTree = ""; tabWidth = 2; }; - 90FD6D5F103C3D21005F5B73 /* Analyzer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Analyzer.h; path = clang/Index/Analyzer.h; sourceTree = ""; }; - 90FD6D60103C3D21005F5B73 /* ASTLocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTLocation.h; path = clang/Index/ASTLocation.h; sourceTree = ""; }; - 90FD6D61103C3D21005F5B73 /* DeclReferenceMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeclReferenceMap.h; path = clang/Index/DeclReferenceMap.h; sourceTree = ""; }; - 90FD6D62103C3D21005F5B73 /* Entity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Entity.h; path = clang/Index/Entity.h; sourceTree = ""; }; - 90FD6D63103C3D21005F5B73 /* GlobalSelector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GlobalSelector.h; path = clang/Index/GlobalSelector.h; sourceTree = ""; }; - 90FD6D64103C3D21005F5B73 /* Handlers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Handlers.h; path = clang/Index/Handlers.h; sourceTree = ""; }; - 90FD6D65103C3D21005F5B73 /* Indexer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Indexer.h; path = clang/Index/Indexer.h; sourceTree = ""; }; - 90FD6D66103C3D21005F5B73 /* IndexProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IndexProvider.h; path = clang/Index/IndexProvider.h; sourceTree = ""; }; - 90FD6D67103C3D21005F5B73 /* Program.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Program.h; path = clang/Index/Program.h; sourceTree = ""; }; - 90FD6D68103C3D21005F5B73 /* SelectorMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SelectorMap.h; path = clang/Index/SelectorMap.h; sourceTree = ""; }; - 90FD6D69103C3D21005F5B73 /* STLExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = STLExtras.h; path = clang/Index/STLExtras.h; sourceTree = ""; }; - 90FD6D6A103C3D21005F5B73 /* TranslationUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TranslationUnit.h; path = clang/Index/TranslationUnit.h; sourceTree = ""; }; - 90FD6D6B103C3D21005F5B73 /* Utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Utils.h; path = clang/Index/Utils.h; sourceTree = ""; }; - 90FD6D6D103C3D49005F5B73 /* Analyzer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Analyzer.cpp; path = lib/Index/Analyzer.cpp; sourceTree = ""; }; - 90FD6D6E103C3D49005F5B73 /* ASTLocation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ASTLocation.cpp; path = lib/Index/ASTLocation.cpp; sourceTree = ""; }; - 90FD6D6F103C3D49005F5B73 /* ASTVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTVisitor.h; path = lib/Index/ASTVisitor.h; sourceTree = ""; }; - 90FD6D70103C3D49005F5B73 /* DeclReferenceMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DeclReferenceMap.cpp; path = lib/Index/DeclReferenceMap.cpp; sourceTree = ""; }; - 90FD6D71103C3D49005F5B73 /* Entity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Entity.cpp; path = lib/Index/Entity.cpp; sourceTree = ""; }; - 90FD6D72103C3D49005F5B73 /* EntityImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EntityImpl.h; path = lib/Index/EntityImpl.h; sourceTree = ""; }; - 90FD6D73103C3D49005F5B73 /* GlobalSelector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = GlobalSelector.cpp; path = lib/Index/GlobalSelector.cpp; sourceTree = ""; }; - 90FD6D74103C3D49005F5B73 /* Handlers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Handlers.cpp; path = lib/Index/Handlers.cpp; sourceTree = ""; }; - 90FD6D75103C3D49005F5B73 /* Indexer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Indexer.cpp; path = lib/Index/Indexer.cpp; sourceTree = ""; }; - 90FD6D76103C3D49005F5B73 /* IndexProvider.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IndexProvider.cpp; path = lib/Index/IndexProvider.cpp; sourceTree = ""; }; - 90FD6D77103C3D49005F5B73 /* Program.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Program.cpp; path = lib/Index/Program.cpp; sourceTree = ""; }; - 90FD6D78103C3D49005F5B73 /* ProgramImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ProgramImpl.h; path = lib/Index/ProgramImpl.h; sourceTree = ""; }; - 90FD6D7A103C3D49005F5B73 /* SelectorMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SelectorMap.cpp; path = lib/Index/SelectorMap.cpp; sourceTree = ""; }; - 90FD6D86103C3D80005F5B73 /* Analyses.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Analyses.def; path = clang/Frontend/Analyses.def; sourceTree = ""; }; - 90FD6D88103C3D80005F5B73 /* ASTConsumers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTConsumers.h; path = clang/Frontend/ASTConsumers.h; sourceTree = ""; }; - 90FD6D89103C3D80005F5B73 /* ASTUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTUnit.h; path = clang/Frontend/ASTUnit.h; sourceTree = ""; }; - 90FD6D8A103C3D80005F5B73 /* CommandLineSourceLoc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CommandLineSourceLoc.h; path = clang/Frontend/CommandLineSourceLoc.h; sourceTree = ""; }; - 90FD6D8B103C3D80005F5B73 /* DeclContextXML.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = DeclContextXML.def; path = clang/Frontend/DeclContextXML.def; sourceTree = ""; }; - 90FD6D8C103C3D80005F5B73 /* DeclXML.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = DeclXML.def; path = clang/Frontend/DeclXML.def; sourceTree = ""; }; - 90FD6D8D103C3D80005F5B73 /* DocumentXML.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = DocumentXML.def; path = clang/Frontend/DocumentXML.def; sourceTree = ""; }; - 90FD6D8E103C3D80005F5B73 /* DocumentXML.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DocumentXML.h; path = clang/Frontend/DocumentXML.h; sourceTree = ""; }; - 90FD6D8F103C3D80005F5B73 /* StmtXML.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = StmtXML.def; path = clang/Frontend/StmtXML.def; sourceTree = ""; }; - 90FD6D90103C3D80005F5B73 /* TypeXML.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = TypeXML.def; path = clang/Frontend/TypeXML.def; sourceTree = ""; }; - 90FD6D91103C3D80005F5B73 /* Utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Utils.h; path = clang/Frontend/Utils.h; sourceTree = ""; }; - 90FD6DB5103D977E005F5B73 /* index-test.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "index-test.cpp"; path = "tools/index-test/index-test.cpp"; sourceTree = ""; }; - BB20603B131EDDBF003C3343 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = ""; }; - BB20603C131EDDBF003C3343 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; - BB206041131EDDDA003C3343 /* ARRMT.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ARRMT.h; sourceTree = ""; }; - BB206043131EDE03003C3343 /* arrmt-test.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = "arrmt-test.cpp"; sourceTree = ""; }; - BB206044131EDE03003C3343 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = ""; }; - BB206045131EDE03003C3343 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; - BB5C372812A5057500259F53 /* DumpXML.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DumpXML.cpp; path = /Volumes/Data/llvm/tools/clang/lib/AST/DumpXML.cpp; sourceTree = ""; }; - BBA5AB141309C2FA000B38F1 /* AdjustedReturnValueChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AdjustedReturnValueChecker.cpp; sourceTree = ""; }; - BBA5AB151309C2FA000B38F1 /* AnalyzerStatsChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AnalyzerStatsChecker.cpp; sourceTree = ""; }; - BBA5AB161309C2FA000B38F1 /* ArrayBoundChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ArrayBoundChecker.cpp; sourceTree = ""; }; - BBA5AB171309C2FA000B38F1 /* ArrayBoundCheckerV2.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ArrayBoundCheckerV2.cpp; sourceTree = ""; }; - BBA5AB181309C2FA000B38F1 /* AttrNonNullChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AttrNonNullChecker.cpp; sourceTree = ""; }; - BBA5AB191309C2FA000B38F1 /* BasicObjCFoundationChecks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BasicObjCFoundationChecks.cpp; sourceTree = ""; }; - BBA5AB1A1309C2FA000B38F1 /* BasicObjCFoundationChecks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BasicObjCFoundationChecks.h; sourceTree = ""; }; - BBA5AB1B1309C2FA000B38F1 /* BuiltinFunctionChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BuiltinFunctionChecker.cpp; sourceTree = ""; }; - BBA5AB1C1309C2FA000B38F1 /* CallAndMessageChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CallAndMessageChecker.cpp; sourceTree = ""; }; - BBA5AB1D1309C2FA000B38F1 /* CastSizeChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CastSizeChecker.cpp; sourceTree = ""; }; - BBA5AB1E1309C2FA000B38F1 /* CastToStructChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CastToStructChecker.cpp; sourceTree = ""; }; - BBA5AB1F1309C2FA000B38F1 /* Checkers.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Checkers.td; sourceTree = ""; }; - BBA5AB201309C2FA000B38F1 /* CheckObjCDealloc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckObjCDealloc.cpp; sourceTree = ""; }; - BBA5AB211309C2FA000B38F1 /* CheckObjCInstMethSignature.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckObjCInstMethSignature.cpp; sourceTree = ""; }; - BBA5AB221309C2FA000B38F1 /* CheckSecuritySyntaxOnly.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckSecuritySyntaxOnly.cpp; sourceTree = ""; }; - BBA5AB231309C2FA000B38F1 /* CheckSizeofPointer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckSizeofPointer.cpp; sourceTree = ""; }; - BBA5AB241309C2FA000B38F1 /* ChrootChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ChrootChecker.cpp; sourceTree = ""; }; - BBA5AB251309C2FA000B38F1 /* ClangSACheckerProvider.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ClangSACheckerProvider.cpp; sourceTree = ""; }; - BBA5AB261309C2FA000B38F1 /* ClangSACheckerProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClangSACheckerProvider.h; sourceTree = ""; }; - BBA5AB271309C2FA000B38F1 /* ClangSACheckers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClangSACheckers.h; sourceTree = ""; }; - BBA5AB291309C2FA000B38F1 /* CStringChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CStringChecker.cpp; sourceTree = ""; }; - BBA5AB2A1309C2FA000B38F1 /* DeadStoresChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DeadStoresChecker.cpp; sourceTree = ""; }; - BBA5AB2B1309C2FA000B38F1 /* DereferenceChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DereferenceChecker.cpp; sourceTree = ""; }; - BBA5AB2C1309C2FA000B38F1 /* DivZeroChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DivZeroChecker.cpp; sourceTree = ""; }; - BBA5AB2D1309C2FA000B38F1 /* ExperimentalChecks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExperimentalChecks.cpp; sourceTree = ""; }; - BBA5AB2E1309C2FA000B38F1 /* ExperimentalChecks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExperimentalChecks.h; sourceTree = ""; }; - BBA5AB2F1309C2FA000B38F1 /* ExprEngine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExprEngine.cpp; sourceTree = ""; }; - BBA5AB301309C2FA000B38F1 /* FixedAddressChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FixedAddressChecker.cpp; sourceTree = ""; }; - BBA5AB311309C2FA000B38F1 /* IdempotentOperationChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IdempotentOperationChecker.cpp; sourceTree = ""; }; - BBA5AB321309C2FA000B38F1 /* InternalChecks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InternalChecks.h; sourceTree = ""; }; - BBA5AB331309C2FA000B38F1 /* LLVMConventionsChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LLVMConventionsChecker.cpp; sourceTree = ""; }; - BBA5AB341309C2FA000B38F1 /* MacOSXAPIChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MacOSXAPIChecker.cpp; sourceTree = ""; }; - BBA5AB361309C2FA000B38F1 /* MallocChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MallocChecker.cpp; sourceTree = ""; }; - BBA5AB371309C2FA000B38F1 /* NoReturnFunctionChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NoReturnFunctionChecker.cpp; sourceTree = ""; }; - BBA5AB381309C2FA000B38F1 /* NSAutoreleasePoolChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NSAutoreleasePoolChecker.cpp; sourceTree = ""; }; - BBA5AB3A1309C2FA000B38F1 /* NSErrorChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NSErrorChecker.cpp; sourceTree = ""; }; - BBA5AB3B1309C2FA000B38F1 /* ObjCAtSyncChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ObjCAtSyncChecker.cpp; sourceTree = ""; }; - BBA5AB3D1309C2FA000B38F1 /* ObjCSelfInitChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ObjCSelfInitChecker.cpp; sourceTree = ""; }; - BBA5AB3F1309C2FA000B38F1 /* ObjCUnusedIVarsChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ObjCUnusedIVarsChecker.cpp; sourceTree = ""; }; - BBA5AB401309C2FA000B38F1 /* OSAtomicChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = OSAtomicChecker.cpp; sourceTree = ""; }; - BBA5AB411309C2FA000B38F1 /* PointerArithChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PointerArithChecker.cpp; sourceTree = ""; }; - BBA5AB421309C2FA000B38F1 /* PointerSubChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PointerSubChecker.cpp; sourceTree = ""; }; - BBA5AB431309C2FA000B38F1 /* PthreadLockChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PthreadLockChecker.cpp; sourceTree = ""; }; - BBA5AB441309C2FA000B38F1 /* ReturnPointerRangeChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ReturnPointerRangeChecker.cpp; sourceTree = ""; }; - BBA5AB451309C2FA000B38F1 /* ReturnUndefChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ReturnUndefChecker.cpp; sourceTree = ""; }; - BBA5AB461309C2FA000B38F1 /* StackAddrLeakChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StackAddrLeakChecker.cpp; sourceTree = ""; }; - BBA5AB471309C2FA000B38F1 /* StreamChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StreamChecker.cpp; sourceTree = ""; }; - BBA5AB481309C2FA000B38F1 /* UndefBranchChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UndefBranchChecker.cpp; sourceTree = ""; }; - BBA5AB491309C2FA000B38F1 /* UndefCapturedBlockVarChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UndefCapturedBlockVarChecker.cpp; sourceTree = ""; }; - BBA5AB4A1309C2FA000B38F1 /* UndefinedArraySubscriptChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UndefinedArraySubscriptChecker.cpp; sourceTree = ""; }; - BBA5AB4B1309C2FA000B38F1 /* UndefinedAssignmentChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UndefinedAssignmentChecker.cpp; sourceTree = ""; }; - BBA5AB4C1309C2FA000B38F1 /* UndefResultChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UndefResultChecker.cpp; sourceTree = ""; }; - BBA5AB4D1309C2FA000B38F1 /* UnixAPIChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UnixAPIChecker.cpp; sourceTree = ""; }; - BBA5AB4E1309C2FA000B38F1 /* UnreachableCodeChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UnreachableCodeChecker.cpp; sourceTree = ""; }; - BBA5AB4F1309C2FA000B38F1 /* VLASizeChecker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = VLASizeChecker.cpp; sourceTree = ""; }; - BBA5AB521309C2FA000B38F1 /* AggExprVisitor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AggExprVisitor.cpp; sourceTree = ""; }; - BBA5AB531309C2FA000B38F1 /* AnalysisManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AnalysisManager.cpp; sourceTree = ""; }; - BBA5AB541309C2FA000B38F1 /* BasicConstraintManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BasicConstraintManager.cpp; sourceTree = ""; }; - BBA5AB551309C2FA000B38F1 /* BasicStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BasicStore.cpp; sourceTree = ""; }; - BBA5AB561309C2FA000B38F1 /* BasicValueFactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BasicValueFactory.cpp; sourceTree = ""; }; - BBA5AB571309C2FA000B38F1 /* BlockCounter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BlockCounter.cpp; sourceTree = ""; }; - BBA5AB581309C2FA000B38F1 /* BugReporter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BugReporter.cpp; sourceTree = ""; }; - BBA5AB591309C2FA000B38F1 /* BugReporterVisitors.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BugReporterVisitors.cpp; sourceTree = ""; }; - BBA5AB5A1309C2FA000B38F1 /* CFRefCount.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CFRefCount.cpp; sourceTree = ""; }; - BBA5AB5B1309C2FA000B38F1 /* Checker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Checker.cpp; sourceTree = ""; }; - BBA5AB5C1309C2FA000B38F1 /* CheckerHelpers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckerHelpers.cpp; sourceTree = ""; }; - BBA5AB5D1309C2FA000B38F1 /* CheckerManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckerManager.cpp; sourceTree = ""; }; - BBA5AB5F1309C2FA000B38F1 /* CoreEngine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CoreEngine.cpp; sourceTree = ""; }; - BBA5AB601309C2FA000B38F1 /* CXXExprEngine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CXXExprEngine.cpp; sourceTree = ""; }; - BBA5AB611309C2FA000B38F1 /* Environment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Environment.cpp; sourceTree = ""; }; - BBA5AB621309C2FA000B38F1 /* ExplodedGraph.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExplodedGraph.cpp; sourceTree = ""; }; - BBA5AB631309C2FA000B38F1 /* FlatStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FlatStore.cpp; sourceTree = ""; }; - BBA5AB641309C2FA000B38F1 /* GRState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GRState.cpp; sourceTree = ""; }; - BBA5AB651309C2FA000B38F1 /* HTMLDiagnostics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLDiagnostics.cpp; sourceTree = ""; }; - BBA5AB671309C2FA000B38F1 /* MemRegion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MemRegion.cpp; sourceTree = ""; }; - BBA5AB681309C2FA000B38F1 /* ObjCMessage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ObjCMessage.cpp; sourceTree = ""; }; - BBA5AB691309C2FA000B38F1 /* PathDiagnostic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PathDiagnostic.cpp; sourceTree = ""; }; - BBA5AB6A1309C2FA000B38F1 /* PlistDiagnostics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PlistDiagnostics.cpp; sourceTree = ""; }; - BBA5AB6B1309C2FA000B38F1 /* RangeConstraintManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RangeConstraintManager.cpp; sourceTree = ""; }; - BBA5AB6C1309C2FA000B38F1 /* RegionStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RegionStore.cpp; sourceTree = ""; }; - BBA5AB6D1309C2FA000B38F1 /* SimpleConstraintManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleConstraintManager.cpp; sourceTree = ""; }; - BBA5AB6E1309C2FA000B38F1 /* SimpleConstraintManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleConstraintManager.h; sourceTree = ""; }; - BBA5AB6F1309C2FA000B38F1 /* SimpleSValBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleSValBuilder.cpp; sourceTree = ""; }; - BBA5AB701309C2FA000B38F1 /* Store.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Store.cpp; sourceTree = ""; }; - BBA5AB711309C2FA000B38F1 /* SValBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SValBuilder.cpp; sourceTree = ""; }; - BBA5AB721309C2FA000B38F1 /* SVals.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVals.cpp; sourceTree = ""; }; - BBA5AB731309C2FA000B38F1 /* SymbolManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SymbolManager.cpp; sourceTree = ""; }; - BBA5AB741309C2FA000B38F1 /* TextPathDiagnostics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextPathDiagnostics.cpp; sourceTree = ""; }; - BBA5AB761309C2FA000B38F1 /* AnalysisConsumer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AnalysisConsumer.cpp; sourceTree = ""; }; - BBA5AB771309C2FA000B38F1 /* AnalysisConsumer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AnalysisConsumer.h; sourceTree = ""; }; - BBA5AB781309C2FA000B38F1 /* CheckerRegistration.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CheckerRegistration.cpp; sourceTree = ""; }; - BBA5AB7A1309C2FA000B38F1 /* FrontendActions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FrontendActions.cpp; sourceTree = ""; }; - BD59A948121496B9003A5A02 /* AnalysisBasedWarnings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AnalysisBasedWarnings.h; path = clang/Sema/AnalysisBasedWarnings.h; sourceTree = ""; }; - BD59A949121496B9003A5A02 /* CodeCompleteConsumer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CodeCompleteConsumer.h; path = clang/Sema/CodeCompleteConsumer.h; sourceTree = ""; }; - BD59A94A121496B9003A5A02 /* CXXFieldCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CXXFieldCollector.h; path = clang/Sema/CXXFieldCollector.h; sourceTree = ""; }; - BD59A94B121496B9003A5A02 /* ExternalSemaSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ExternalSemaSource.h; path = clang/Sema/ExternalSemaSource.h; sourceTree = ""; }; - BD59A94C121496B9003A5A02 /* IdentifierResolver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IdentifierResolver.h; path = clang/Sema/IdentifierResolver.h; sourceTree = ""; }; - BD59A94D121496B9003A5A02 /* Initialization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Initialization.h; path = clang/Sema/Initialization.h; sourceTree = ""; }; - BD59A94E121496B9003A5A02 /* Lookup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Lookup.h; path = clang/Sema/Lookup.h; sourceTree = ""; }; - BD59A94F121496B9003A5A02 /* Overload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Overload.h; path = clang/Sema/Overload.h; sourceTree = ""; }; - BD59A951121496B9003A5A02 /* Sema.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Sema.h; path = clang/Sema/Sema.h; sourceTree = ""; }; - BD59A952121496B9003A5A02 /* SemaConsumer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SemaConsumer.h; path = clang/Sema/SemaConsumer.h; sourceTree = ""; }; - BD59A953121496B9003A5A02 /* SemaDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SemaDiagnostic.h; path = clang/Sema/SemaDiagnostic.h; sourceTree = ""; }; - BD59A954121496B9003A5A02 /* Template.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Template.h; path = clang/Sema/Template.h; sourceTree = ""; }; - BD6B0EDE13A1824C00B8E3FE /* Mangle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Mangle.cpp; sourceTree = ""; }; - BD6B0EE113A182A600B8E3FE /* ItaniumMangle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ItaniumMangle.cpp; sourceTree = ""; }; - BD6B0EE313A182DA00B8E3FE /* MicrosoftMangle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MicrosoftMangle.cpp; sourceTree = ""; }; - BDF87CF60FD746F300BBF872 /* SemaTemplateDeduction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaTemplateDeduction.cpp; path = lib/Sema/SemaTemplateDeduction.cpp; sourceTree = ""; tabWidth = 2; }; - BF89C3E111595818001C2D68 /* AnalysisBasedWarnings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AnalysisBasedWarnings.cpp; path = lib/Sema/AnalysisBasedWarnings.cpp; sourceTree = ""; }; - BF89C3E5115958A1001C2D68 /* TargetAttributesSema.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TargetAttributesSema.h; path = lib/Sema/TargetAttributesSema.h; sourceTree = ""; }; - BF89C3E81159594A001C2D68 /* SemaObjCProperty.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SemaObjCProperty.cpp; path = lib/Sema/SemaObjCProperty.cpp; sourceTree = ""; }; - BF89C3F811595A01001C2D68 /* SemaType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SemaType.cpp; path = lib/Sema/SemaType.cpp; sourceTree = ""; }; - BF89C3FA11595A37001C2D68 /* SemaCodeComplete.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SemaCodeComplete.cpp; path = lib/Sema/SemaCodeComplete.cpp; sourceTree = ""; }; - BF89C3FC11595A5D001C2D68 /* SemaExceptionSpec.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SemaExceptionSpec.cpp; path = lib/Sema/SemaExceptionSpec.cpp; sourceTree = ""; }; - BF9FED6E1225DF55003A8B71 /* TemplateDeduction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TemplateDeduction.h; path = clang/Sema/TemplateDeduction.h; sourceTree = ""; }; - BF9FED6F1225DF7F003A8B71 /* Action.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Action.h; path = clang/Sema/Action.h; sourceTree = ""; }; - BF9FED701225DFA1003A8B71 /* AttributeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AttributeList.h; path = clang/Sema/AttributeList.h; sourceTree = ""; }; - BF9FED711225DFD9003A8B71 /* DeclSpec.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeclSpec.h; path = clang/Sema/DeclSpec.h; sourceTree = ""; }; - BF9FED721225DFD9003A8B71 /* Designator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Designator.h; path = clang/Sema/Designator.h; sourceTree = ""; }; - BF9FED731225E005003A8B71 /* Ownership.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Ownership.h; path = clang/Sema/Ownership.h; sourceTree = ""; }; - BF9FED741225E005003A8B71 /* ParsedTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ParsedTemplate.h; path = clang/Sema/ParsedTemplate.h; sourceTree = ""; }; - BF9FED751225E005003A8B71 /* Scope.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Scope.h; path = clang/Sema/Scope.h; sourceTree = ""; }; - BF9FED761225E005003A8B71 /* ScopeInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScopeInfo.h; path = clang/Sema/ScopeInfo.h; sourceTree = ""; }; - BF9FED771225E032003A8B71 /* ObjCMethodList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ObjCMethodList.h; path = clang/Sema/ObjCMethodList.h; sourceTree = ""; }; - BF9FED781225E041003A8B71 /* SemaInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SemaInternal.h; path = clang/Sema/SemaInternal.h; sourceTree = ""; }; - BF9FEDB21225E1D2003A8B71 /* CodeCompletionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CodeCompletionHandler.h; sourceTree = ""; }; - BF9FEDB31225E1E1003A8B71 /* ExternalPreprocessorSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExternalPreprocessorSource.h; sourceTree = ""; }; - BF9FEDB41225E1F3003A8B71 /* PreprocessingRecord.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PreprocessingRecord.h; sourceTree = ""; }; - BF9FEDB51225E213003A8B71 /* ParseAST.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ParseAST.h; path = clang/Parse/ParseAST.h; sourceTree = ""; }; - BF9FEDB61225E252003A8B71 /* OperationKinds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OperationKinds.h; path = clang/AST/OperationKinds.h; sourceTree = ""; }; - BF9FEDB71225E26A003A8B71 /* RecursiveASTVisitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RecursiveASTVisitor.h; path = clang/AST/RecursiveASTVisitor.h; sourceTree = ""; }; - BF9FEDB81225E2DE003A8B71 /* BackendUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BackendUtil.h; path = clang/CodeGen/BackendUtil.h; sourceTree = ""; }; - BF9FEDB91225E2DE003A8B71 /* CodeGenAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CodeGenAction.h; path = clang/CodeGen/CodeGenAction.h; sourceTree = ""; }; - BF9FEDBA1225E30E003A8B71 /* ASTBitCodes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTBitCodes.h; path = clang/Serialization/ASTBitCodes.h; sourceTree = ""; }; - BF9FEDBB1225E34B003A8B71 /* FixItRewriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FixItRewriter.h; path = clang/Rewrite/FixItRewriter.h; sourceTree = ""; }; - BF9FEDBC1225E34B003A8B71 /* FrontendActions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FrontendActions.h; path = clang/Rewrite/FrontendActions.h; sourceTree = ""; }; - BF9FEDBD1225E35F003A8B71 /* Rewriters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Rewriters.h; path = clang/Rewrite/Rewriters.h; sourceTree = ""; }; - BF9FEDBE1225E373003A8B71 /* ASTConsumers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASTConsumers.h; path = clang/Rewrite/ASTConsumers.h; sourceTree = ""; }; - BF9FEDBF1225E392003A8B71 /* AnalyzerOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AnalyzerOptions.h; path = clang/Frontend/AnalyzerOptions.h; sourceTree = ""; }; - BF9FEDC01225E3AB003A8B71 /* ChainedDiagnosticClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ChainedDiagnosticClient.h; path = clang/Frontend/ChainedDiagnosticClient.h; sourceTree = ""; }; - BF9FEDC11225E3AB003A8B71 /* CodeGenOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CodeGenOptions.h; path = clang/Frontend/CodeGenOptions.h; sourceTree = ""; }; - BF9FEDC21225E3C2003A8B71 /* CompilerInstance.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CompilerInstance.h; path = clang/Frontend/CompilerInstance.h; sourceTree = ""; }; - BF9FEDC31225E3C2003A8B71 /* CompilerInvocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CompilerInvocation.h; path = clang/Frontend/CompilerInvocation.h; sourceTree = ""; }; - BF9FEDC41225E3DA003A8B71 /* DependencyOutputOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DependencyOutputOptions.h; path = clang/Frontend/DependencyOutputOptions.h; sourceTree = ""; }; - BF9FEDC51225E3DA003A8B71 /* DiagnosticOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DiagnosticOptions.h; path = clang/Frontend/DiagnosticOptions.h; sourceTree = ""; }; - BF9FEDC61225E3F6003A8B71 /* FrontendAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FrontendAction.h; path = clang/Frontend/FrontendAction.h; sourceTree = ""; }; - BF9FEDC71225E3F6003A8B71 /* FrontendActions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FrontendActions.h; path = clang/Frontend/FrontendActions.h; sourceTree = ""; }; - BF9FEDC81225E40A003A8B71 /* FrontendOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FrontendOptions.h; path = clang/Frontend/FrontendOptions.h; sourceTree = ""; }; - BF9FEDC91225E40A003A8B71 /* FrontendPluginRegistry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FrontendPluginRegistry.h; path = clang/Frontend/FrontendPluginRegistry.h; sourceTree = ""; }; - BF9FEDCA1225E40A003A8B71 /* HeaderSearchOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HeaderSearchOptions.h; path = clang/Frontend/HeaderSearchOptions.h; sourceTree = ""; }; - BF9FEDCB1225E40A003A8B71 /* LangStandard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LangStandard.h; path = clang/Frontend/LangStandard.h; sourceTree = ""; }; - BF9FEDCC1225E41D003A8B71 /* PreprocessorOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PreprocessorOptions.h; path = clang/Frontend/PreprocessorOptions.h; sourceTree = ""; }; - BF9FEDCD1225E41D003A8B71 /* PreprocessorOutputOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PreprocessorOutputOptions.h; path = clang/Frontend/PreprocessorOutputOptions.h; sourceTree = ""; }; - BF9FEDCE1225E42C003A8B71 /* VerifyDiagnosticsClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = VerifyDiagnosticsClient.h; path = clang/Frontend/VerifyDiagnosticsClient.h; sourceTree = ""; }; - BF9FEDCF1225E443003A8B71 /* LangStandards.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = LangStandards.def; path = clang/Frontend/LangStandards.def; sourceTree = ""; }; - BF9FEDE71225E488003A8B71 /* CC1AsOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CC1AsOptions.h; path = clang/Driver/CC1AsOptions.h; sourceTree = ""; }; - BF9FEDE81225E49D003A8B71 /* CC1Options.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CC1Options.h; path = clang/Driver/CC1Options.h; sourceTree = ""; }; - BF9FEDE91225E4BD003A8B71 /* OptSpecifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OptSpecifier.h; path = clang/Driver/OptSpecifier.h; sourceTree = ""; }; - BF9FEDEA1225E4BD003A8B71 /* OptTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OptTable.h; path = clang/Driver/OptTable.h; sourceTree = ""; }; - BF9FEDEB1225E4F2003A8B71 /* AttrKinds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttrKinds.h; sourceTree = ""; }; - BF9FEDEC1225E514003A8B71 /* Version.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Version.h; sourceTree = ""; }; - BF9FEDED1225E52F003A8B71 /* arm_neon.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = arm_neon.td; sourceTree = ""; }; - BF9FEDEE1225E52F003A8B71 /* Attr.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Attr.td; sourceTree = ""; }; - BF9FEDEF1225E55C003A8B71 /* BuiltinsARM.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = BuiltinsARM.def; sourceTree = ""; }; - BF9FEDF01225E574003A8B71 /* Specifiers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Specifiers.h; sourceTree = ""; }; - BF9FEDF11225E574003A8B71 /* StmtNodes.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = StmtNodes.td; sourceTree = ""; }; - BF9FEDF21225E58B003A8B71 /* TargetOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TargetOptions.h; sourceTree = ""; }; - BF9FEDF31225E5B6003A8B71 /* DeclNodes.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DeclNodes.td; sourceTree = ""; }; - BF9FEDF41225E5D5003A8B71 /* Linkage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Linkage.h; sourceTree = ""; }; - BF9FEDF51225E5D5003A8B71 /* MacroBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacroBuilder.h; sourceTree = ""; }; - BF9FEDF61225E5FB003A8B71 /* Version.inc.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Version.inc.in; sourceTree = ""; }; - BF9FEDF71225E613003A8B71 /* DiagnosticCategories.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticCategories.td; sourceTree = ""; }; - BF9FEDFA1225E6A9003A8B71 /* AttributeList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AttributeList.cpp; path = lib/Sema/AttributeList.cpp; sourceTree = ""; }; - BF9FEDFC1225E6C6003A8B71 /* DeclSpec.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DeclSpec.cpp; path = lib/Sema/DeclSpec.cpp; sourceTree = ""; }; - BF9FEDFE1225E6DD003A8B71 /* TargetAttributesSema.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TargetAttributesSema.cpp; path = lib/Sema/TargetAttributesSema.cpp; sourceTree = ""; }; - BF9FEE001225E718003A8B71 /* CXXABI.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = CXXABI.h; sourceTree = ""; tabWidth = 2; }; - BF9FEE011225E73F003A8B71 /* ExprClassification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ExprClassification.cpp; sourceTree = ""; tabWidth = 2; }; - BF9FEE031225E759003A8B71 /* ItaniumCXXABI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = ItaniumCXXABI.cpp; sourceTree = ""; tabWidth = 2; }; - BF9FEE051225E770003A8B71 /* MicrosoftCXXABI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = MicrosoftCXXABI.cpp; sourceTree = ""; tabWidth = 2; }; - BF9FEE2B1225E7EA003A8B71 /* BackendUtil.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = BackendUtil.cpp; path = lib/CodeGen/BackendUtil.cpp; sourceTree = ""; }; - BF9FEE2D1225E80F003A8B71 /* CGCXXABI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CGCXXABI.h; path = lib/CodeGen/CGCXXABI.h; sourceTree = ""; }; - BF9FEE2E1225E82D003A8B71 /* CGException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CGException.h; path = lib/CodeGen/CGException.h; sourceTree = ""; }; - BF9FEE2F1225E854003A8B71 /* CGRecordLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CGRecordLayout.h; path = lib/CodeGen/CGRecordLayout.h; sourceTree = ""; }; - BF9FEE301225E86C003A8B71 /* CodeGenAction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CodeGenAction.cpp; path = lib/CodeGen/CodeGenAction.cpp; sourceTree = ""; }; - BF9FEE321225E898003A8B71 /* ItaniumCXXABI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ItaniumCXXABI.cpp; path = lib/CodeGen/ItaniumCXXABI.cpp; sourceTree = ""; }; - BF9FEE341225E8B1003A8B71 /* MicrosoftCXXABI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MicrosoftCXXABI.cpp; path = lib/CodeGen/MicrosoftCXXABI.cpp; sourceTree = ""; }; - BF9FEE361225E8CF003A8B71 /* README.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = README.txt; path = lib/CodeGen/README.txt; sourceTree = ""; }; - BF9FEE451225EA24003A8B71 /* DelayedDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DelayedDiagnostic.h; path = clang/Sema/DelayedDiagnostic.h; sourceTree = ""; }; - BF9FEE511226FE9F003A8B71 /* ParseAST.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ParseAST.cpp; path = lib/Parse/ParseAST.cpp; sourceTree = ""; }; - BF9FEE531226FEC1003A8B71 /* RAIIObjectsForParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RAIIObjectsForParser.h; path = lib/Parse/RAIIObjectsForParser.h; sourceTree = ""; }; - BF9FEEF1122D8068003A8B71 /* PreprocessingRecord.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PreprocessingRecord.cpp; sourceTree = ""; }; - BFE2F69311DA955A0007EDC0 /* DeltaTree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DeltaTree.cpp; sourceTree = ""; }; - BFE2F69411DA955A0007EDC0 /* FixItRewriter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FixItRewriter.cpp; sourceTree = ""; }; - BFE2F69511DA955A0007EDC0 /* FrontendActions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FrontendActions.cpp; sourceTree = ""; }; - BFE2F69611DA955A0007EDC0 /* HTMLPrint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLPrint.cpp; sourceTree = ""; }; - BFE2F69711DA955A0007EDC0 /* HTMLRewrite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLRewrite.cpp; sourceTree = ""; }; - BFE2F6A511DA955A0007EDC0 /* RewriteMacros.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RewriteMacros.cpp; sourceTree = ""; }; - BFE2F6A611DA955A0007EDC0 /* RewriteObjC.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RewriteObjC.cpp; sourceTree = ""; }; - BFE2F6A711DA955A0007EDC0 /* Rewriter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Rewriter.cpp; sourceTree = ""; }; - BFE2F6A811DA955A0007EDC0 /* RewriteRope.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RewriteRope.cpp; sourceTree = ""; }; - BFE2F6A911DA955A0007EDC0 /* RewriteTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RewriteTest.cpp; sourceTree = ""; }; - BFE2F6AA11DA955A0007EDC0 /* TokenRewriter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TokenRewriter.cpp; sourceTree = ""; }; - DE01DA480B12ADA300AC22CE /* PPCallbacks.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = PPCallbacks.h; sourceTree = ""; }; - DE06756B0C051CFE00EBBFD8 /* ParseExprCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseExprCXX.cpp; path = lib/Parse/ParseExprCXX.cpp; sourceTree = ""; tabWidth = 2; }; - DE06B73D0A8307640050E87E /* LangOptions.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = LangOptions.h; sourceTree = ""; tabWidth = 2; }; - DE06D42F0A8BB52D0050E87E /* Parser.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Parser.cpp; path = lib/Parse/Parser.cpp; sourceTree = ""; tabWidth = 2; }; - DE0FCA620A95859D00248FD5 /* Expr.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Expr.h; path = clang/AST/Expr.h; sourceTree = ""; tabWidth = 2; }; - DE1F22020A7D852A00FBF588 /* Parser.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Parser.h; path = clang/Parse/Parser.h; sourceTree = ""; tabWidth = 2; }; - DE224FF70C7AA98800D370A5 /* CGExprComplex.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGExprComplex.cpp; path = lib/CodeGen/CGExprComplex.cpp; sourceTree = ""; tabWidth = 2; }; - DE22526F0C7E82D000D370A5 /* CGExprScalar.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGExprScalar.cpp; path = lib/CodeGen/CGExprScalar.cpp; sourceTree = ""; tabWidth = 2; }; - DE2255FB0C8004E600D370A5 /* ParseDeclCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseDeclCXX.cpp; path = lib/Parse/ParseDeclCXX.cpp; sourceTree = ""; tabWidth = 2; }; - DE22BCF10E14197E0094DC60 /* SemaDeclAttr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaDeclAttr.cpp; path = lib/Sema/SemaDeclAttr.cpp; sourceTree = ""; tabWidth = 2; }; - DE344AB70AE5DF6D00DBC861 /* HeaderSearch.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = HeaderSearch.h; sourceTree = ""; }; - DE344B530AE5E46C00DBC861 /* HeaderSearch.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = HeaderSearch.cpp; sourceTree = ""; }; - DE3450D60AEB543100DBC861 /* DirectoryLookup.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DirectoryLookup.h; sourceTree = ""; }; - DE3452800AEF1B1800DBC861 /* Stmt.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Stmt.h; path = clang/AST/Stmt.h; sourceTree = ""; tabWidth = 2; }; - DE345C190AFC658B00DBC861 /* StmtVisitor.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = StmtVisitor.h; path = clang/AST/StmtVisitor.h; sourceTree = ""; tabWidth = 2; }; - DE345FFF0AFDCC1900DBC861 /* ParseObjc.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseObjc.cpp; path = lib/Parse/ParseObjc.cpp; sourceTree = ""; tabWidth = 2; }; - DE3460040AFDCC6500DBC861 /* ParseInit.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseInit.cpp; path = lib/Parse/ParseInit.cpp; sourceTree = ""; tabWidth = 2; }; - DE34600A0AFDCCBF00DBC861 /* ParseStmt.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseStmt.cpp; path = lib/Parse/ParseStmt.cpp; sourceTree = ""; tabWidth = 2; }; - DE34600E0AFDCCCE00DBC861 /* ParseDecl.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseDecl.cpp; path = lib/Parse/ParseDecl.cpp; sourceTree = ""; tabWidth = 2; }; - DE3460120AFDCCDA00DBC861 /* ParseExpr.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ParseExpr.cpp; path = lib/Parse/ParseExpr.cpp; sourceTree = ""; tabWidth = 2; }; - DE3464210B03040900DBC861 /* Type.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Type.h; path = clang/AST/Type.h; sourceTree = ""; tabWidth = 2; }; - DE37251C0FE4818000CF2CC2 /* Builtins.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Builtins.h; sourceTree = ""; }; - DE37252A0FE4818F00CF2CC2 /* Builtins.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Builtins.def; sourceTree = ""; }; - DE37252D0FE481AD00CF2CC2 /* Builtins.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Builtins.cpp; sourceTree = ""; }; - DE3725310FE4822800CF2CC2 /* TargetBuiltins.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TargetBuiltins.h; sourceTree = ""; }; - DE3725320FE4826C00CF2CC2 /* BuiltinsX86.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = BuiltinsX86.def; sourceTree = ""; }; - DE3725330FE4827200CF2CC2 /* BuiltinsPPC.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = BuiltinsPPC.def; sourceTree = ""; }; - DE38CD4E0D794CF900A273B6 /* CGObjCRuntime.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CGObjCRuntime.h; path = lib/CodeGen/CGObjCRuntime.h; sourceTree = ""; tabWidth = 2; }; - DE38CD4F0D794D0100A273B6 /* CGObjCGNU.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGObjCGNU.cpp; path = lib/CodeGen/CGObjCGNU.cpp; sourceTree = ""; tabWidth = 2; }; - DE3986EF0CB8D4B300223765 /* IdentifierTable.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = IdentifierTable.h; sourceTree = ""; tabWidth = 2; }; - DE3986F30CB8D50C00223765 /* IdentifierTable.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = IdentifierTable.cpp; sourceTree = ""; tabWidth = 2; }; - DE41211D0D7F1BBE0080F80A /* GRWorkList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRWorkList.h; path = clang/Analysis/PathSensitive/GRWorkList.h; sourceTree = ""; }; - DE41211E0D7F1BBE0080F80A /* SymbolManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SymbolManager.h; path = clang/Analysis/PathSensitive/SymbolManager.h; sourceTree = ""; }; - DE41211F0D7F1BBE0080F80A /* GRBlockCounter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRBlockCounter.h; path = clang/Analysis/PathSensitive/GRBlockCounter.h; sourceTree = ""; }; - DE4121200D7F1BBE0080F80A /* ExplodedGraph.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ExplodedGraph.h; path = clang/Analysis/PathSensitive/ExplodedGraph.h; sourceTree = ""; }; - DE4121210D7F1BBE0080F80A /* GRExprEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRExprEngine.h; path = clang/Analysis/PathSensitive/GRExprEngine.h; sourceTree = ""; }; - DE4121220D7F1BBE0080F80A /* GRTransferFuncs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRTransferFuncs.h; path = clang/Analysis/PathSensitive/GRTransferFuncs.h; sourceTree = ""; }; - DE4121230D7F1BBE0080F80A /* GRCoreEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRCoreEngine.h; path = clang/Analysis/PathSensitive/GRCoreEngine.h; sourceTree = ""; }; - DE4264FB0C113592005A861D /* CGDecl.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGDecl.cpp; path = lib/CodeGen/CGDecl.cpp; sourceTree = ""; tabWidth = 2; }; - DE46BF270AE0A82D00CC047C /* TargetInfo.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = TargetInfo.h; sourceTree = ""; tabWidth = 2; }; - DE4772F90C10EAE5002239E8 /* CGStmt.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGStmt.cpp; path = lib/CodeGen/CGStmt.cpp; sourceTree = ""; tabWidth = 2; }; - DE4772FB0C10EAEC002239E8 /* CGExpr.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGExpr.cpp; path = lib/CodeGen/CGExpr.cpp; sourceTree = ""; tabWidth = 2; }; - DE47999B0D2EBE1A00706D2D /* SemaExprObjC.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaExprObjC.cpp; path = lib/Sema/SemaExprObjC.cpp; sourceTree = ""; tabWidth = 2; }; - DE4DC7980EA1BE4400069E5A /* TokenRewriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TokenRewriter.h; path = clang/Rewrite/TokenRewriter.h; sourceTree = ""; }; - DE4DC7A20EA1C33E00069E5A /* TokenRewriter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TokenRewriter.cpp; path = lib/Rewrite/TokenRewriter.cpp; sourceTree = ""; }; - DE53370B0CE2D96F00D9A028 /* RewriteRope.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RewriteRope.h; path = clang/Rewrite/RewriteRope.h; sourceTree = ""; }; - DE613EF30E0E148D00B05B79 /* APValue.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = APValue.h; path = clang/AST/APValue.h; sourceTree = ""; tabWidth = 2; }; - DE67E70C0C020ECA00F66BC5 /* SemaStmt.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaStmt.cpp; path = lib/Sema/SemaStmt.cpp; sourceTree = ""; tabWidth = 2; }; - DE67E70E0C020ECF00F66BC5 /* SemaExprCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaExprCXX.cpp; path = lib/Sema/SemaExprCXX.cpp; sourceTree = ""; tabWidth = 2; }; - DE67E7100C020ED400F66BC5 /* SemaExpr.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaExpr.cpp; path = lib/Sema/SemaExpr.cpp; sourceTree = ""; tabWidth = 2; }; - DE67E7120C020ED900F66BC5 /* SemaDecl.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaDecl.cpp; path = lib/Sema/SemaDecl.cpp; sourceTree = ""; tabWidth = 2; usesTabs = 0; }; - DE67E7160C020EE400F66BC5 /* Sema.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Sema.cpp; path = lib/Sema/Sema.cpp; sourceTree = ""; tabWidth = 2; }; - DE6951C60C4D1F5D00A5826B /* RecordLayout.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = RecordLayout.h; path = clang/AST/RecordLayout.h; sourceTree = ""; tabWidth = 2; }; - DE6954630C5121BD00A5826B /* Token.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Token.h; sourceTree = ""; }; - DE704B250D0FBEBE009C7762 /* SemaDeclObjC.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaDeclObjC.cpp; path = lib/Sema/SemaDeclObjC.cpp; sourceTree = ""; tabWidth = 2; }; - DE704BD10D1647E7009C7762 /* HeaderMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderMap.h; sourceTree = ""; }; - DE704DD10D1668A4009C7762 /* HeaderMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HeaderMap.cpp; sourceTree = ""; }; - DE75ED280B044DC90020CF81 /* ASTContext.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ASTContext.h; path = clang/AST/ASTContext.h; sourceTree = ""; tabWidth = 2; }; - DE85CD800D8380B10070E26E /* TokenLexer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TokenLexer.cpp; sourceTree = ""; }; - DE85CD840D8380F20070E26E /* TokenLexer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TokenLexer.h; sourceTree = ""; }; - DE85CD9E0D8382DD0070E26E /* MacroArgs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacroArgs.h; sourceTree = ""; }; - DE85CDA20D8383B20070E26E /* MacroArgs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MacroArgs.cpp; sourceTree = ""; }; - DE85CDAB0D838C120070E26E /* PPMacroExpansion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PPMacroExpansion.cpp; sourceTree = ""; }; - DE85CDAF0D838C390070E26E /* PPDirectives.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PPDirectives.cpp; sourceTree = ""; }; - DE85CDB50D839BAE0070E26E /* PPLexerChange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PPLexerChange.cpp; sourceTree = ""; }; - DE8822350EC80C0A00CBC30A /* CGBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CGBuilder.h; path = lib/CodeGen/CGBuilder.h; sourceTree = ""; tabWidth = 2; }; - DE8823DE0ED0B78600CBC30A /* PTHLexer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHLexer.h; sourceTree = ""; }; - DE8824530ED1243E00CBC30A /* OperatorKinds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OperatorKinds.h; sourceTree = ""; }; - DE8824560ED1244600CBC30A /* OperatorKinds.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = OperatorKinds.def; sourceTree = ""; }; - DE928B120C05659200231DA4 /* ModuleBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ModuleBuilder.cpp; path = lib/CodeGen/ModuleBuilder.cpp; sourceTree = ""; tabWidth = 2; }; - DE928B1F0C0565B000231DA4 /* ModuleBuilder.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ModuleBuilder.h; path = clang/CodeGen/ModuleBuilder.h; sourceTree = ""; }; - DE928B7C0C0A615100231DA4 /* CodeGenModule.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CodeGenModule.h; path = lib/CodeGen/CodeGenModule.h; sourceTree = ""; tabWidth = 2; }; - DE928B7E0C0A615600231DA4 /* CodeGenModule.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CodeGenModule.cpp; path = lib/CodeGen/CodeGenModule.cpp; sourceTree = ""; tabWidth = 2; }; - DE928B800C0A615B00231DA4 /* CodeGenFunction.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CodeGenFunction.h; path = lib/CodeGen/CodeGenFunction.h; sourceTree = ""; tabWidth = 2; usesTabs = 0; }; - DE928B820C0A616000231DA4 /* CodeGenFunction.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CodeGenFunction.cpp; path = lib/CodeGen/CodeGenFunction.cpp; sourceTree = ""; tabWidth = 2; }; - DEA09A6E0F31756F000C2258 /* ASTDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ASTDiagnostic.h; path = clang/AST/ASTDiagnostic.h; sourceTree = ""; tabWidth = 2; }; - DEA09A830F3175BF000C2258 /* LexDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LexDiagnostic.h; sourceTree = ""; }; - DEA09A860F3175CA000C2258 /* ParseDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ParseDiagnostic.h; path = clang/Parse/ParseDiagnostic.h; sourceTree = ""; tabWidth = 2; }; - DEAABDF70F5F477C0098928A /* PrettyStackTrace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrettyStackTrace.h; sourceTree = ""; }; - DEAEE98A0A5A2B970045101B /* MultipleIncludeOpt.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MultipleIncludeOpt.h; sourceTree = ""; }; - DEAEED4A0A5AF89A0045101B /* NOTES.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = NOTES.txt; sourceTree = ""; }; - DEB076C90F3A221200F5A2BE /* DeclTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = DeclTemplate.h; path = clang/AST/DeclTemplate.h; sourceTree = ""; tabWidth = 2; }; - DEB077930F44F96000F5A2BE /* TokenConcatenation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TokenConcatenation.h; sourceTree = ""; }; - DEB077980F44F97800F5A2BE /* TokenConcatenation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TokenConcatenation.cpp; sourceTree = ""; }; - DEB07AC70F4A427E00F5A2BE /* SemaAttr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaAttr.cpp; path = lib/Sema/SemaAttr.cpp; sourceTree = ""; tabWidth = 2; }; - DEB089EE0F12F1D900522C07 /* TypeTraits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypeTraits.h; sourceTree = ""; }; - DEC8D9900A9433CD00353FCA /* Decl.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Decl.h; path = clang/AST/Decl.h; sourceTree = ""; tabWidth = 2; }; - DEC8D9A30A94346E00353FCA /* AST.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = AST.h; path = clang/AST/AST.h; sourceTree = ""; tabWidth = 2; }; - DECAB0CF0DB3C84200E13CCB /* RewriteRope.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = RewriteRope.cpp; path = lib/Rewrite/RewriteRope.cpp; sourceTree = ""; }; - DECB6D640F9AE26600F5FBC7 /* JumpDiagnostics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = JumpDiagnostics.cpp; path = lib/Sema/JumpDiagnostics.cpp; sourceTree = ""; tabWidth = 2; }; - DECB6F060F9D93A800F5FBC7 /* InitPreprocessor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = InitPreprocessor.cpp; path = lib/Frontend/InitPreprocessor.cpp; sourceTree = ""; }; - DECB734E0FA3ED8400F5FBC7 /* StmtObjC.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = StmtObjC.h; path = clang/AST/StmtObjC.h; sourceTree = ""; tabWidth = 2; }; - DECB73550FA3EE5A00F5FBC7 /* StmtCXX.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = StmtCXX.h; path = clang/AST/StmtCXX.h; sourceTree = ""; tabWidth = 2; }; - DED626C80AE0C065001E80A4 /* TargetInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = TargetInfo.cpp; sourceTree = ""; tabWidth = 2; }; - DED7D7310A524295003AD0FB /* Diagnostic.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = Diagnostic.h; sourceTree = ""; tabWidth = 2; }; - DED7D7330A524295003AD0FB /* FileManager.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = FileManager.h; sourceTree = ""; tabWidth = 2; }; - DED7D7350A524295003AD0FB /* SourceLocation.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = SourceLocation.h; sourceTree = ""; tabWidth = 2; }; - DED7D7360A524295003AD0FB /* SourceManager.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = SourceManager.h; sourceTree = ""; tabWidth = 2; }; - DED7D7370A524295003AD0FB /* TokenKinds.def */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = text; path = TokenKinds.def; sourceTree = ""; tabWidth = 2; }; - DED7D7380A524295003AD0FB /* TokenKinds.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; path = TokenKinds.h; sourceTree = ""; tabWidth = 2; }; - DED7D73B0A524295003AD0FB /* Lexer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Lexer.h; sourceTree = ""; }; - DED7D73E0A524295003AD0FB /* MacroInfo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MacroInfo.h; sourceTree = ""; }; - DED7D73F0A524295003AD0FB /* Pragma.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Pragma.h; sourceTree = ""; }; - DED7D7400A524295003AD0FB /* Preprocessor.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Preprocessor.h; sourceTree = ""; }; - DED7D75D0A5242C7003AD0FB /* Diagnostic.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = Diagnostic.cpp; sourceTree = ""; tabWidth = 2; }; - DED7D75E0A5242C7003AD0FB /* FileManager.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = FileManager.cpp; sourceTree = ""; tabWidth = 2; }; - DED7D76D0A5242C7003AD0FB /* SourceManager.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = SourceManager.cpp; sourceTree = ""; tabWidth = 2; }; - DED7D76E0A5242C7003AD0FB /* TokenKinds.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; path = TokenKinds.cpp; sourceTree = ""; tabWidth = 2; }; - DED7D79E0A5242E6003AD0FB /* Lexer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Lexer.cpp; sourceTree = ""; }; - DED7D7A00A5242E6003AD0FB /* MacroInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = MacroInfo.cpp; sourceTree = ""; }; - DED7D7A20A5242E6003AD0FB /* PPExpressions.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = PPExpressions.cpp; sourceTree = ""; }; - DED7D7A30A5242E6003AD0FB /* Pragma.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Pragma.cpp; sourceTree = ""; }; - DED7D7A40A5242E6003AD0FB /* Preprocessor.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Preprocessor.cpp; sourceTree = ""; }; - DED7D7D70A524302003AD0FB /* README.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = README.txt; sourceTree = ""; }; - DED7D9170A52518C003AD0FB /* ScratchBuffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ScratchBuffer.h; sourceTree = ""; }; - DED7D9E40A5257F6003AD0FB /* ScratchBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ScratchBuffer.cpp; sourceTree = ""; }; - DEDFE5CB0F7206CC0035BD10 /* NestedNameSpecifier.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = NestedNameSpecifier.h; path = clang/AST/NestedNameSpecifier.h; sourceTree = ""; tabWidth = 2; }; - DEDFE6450F7B3B4E0035BD10 /* driver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = driver.cpp; path = tools/driver/driver.cpp; sourceTree = ""; }; - DEDFE6480F7B3B830035BD10 /* Types.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Types.cpp; path = lib/Driver/Types.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6490F7B3B830035BD10 /* Tools.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = Tools.h; path = lib/Driver/Tools.h; sourceTree = ""; tabWidth = 2; }; - DEDFE64A0F7B3B830035BD10 /* Tools.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Tools.cpp; path = lib/Driver/Tools.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE64B0F7B3B830035BD10 /* ToolChains.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = ToolChains.h; path = lib/Driver/ToolChains.h; sourceTree = ""; tabWidth = 2; }; - DEDFE64C0F7B3B830035BD10 /* Compilation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Compilation.cpp; path = lib/Driver/Compilation.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE64D0F7B3B830035BD10 /* ArgList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ArgList.cpp; path = lib/Driver/ArgList.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE64E0F7B3B830035BD10 /* Arg.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Arg.cpp; path = lib/Driver/Arg.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE64F0F7B3B830035BD10 /* Action.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Action.cpp; path = lib/Driver/Action.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6500F7B3B830035BD10 /* Phases.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Phases.cpp; path = lib/Driver/Phases.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6510F7B3B830035BD10 /* OptTable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = OptTable.cpp; path = lib/Driver/OptTable.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6520F7B3B830035BD10 /* Option.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Option.cpp; path = lib/Driver/Option.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6530F7B3B830035BD10 /* Job.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Job.cpp; path = lib/Driver/Job.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6540F7B3B830035BD10 /* InputInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = InputInfo.h; path = lib/Driver/InputInfo.h; sourceTree = ""; tabWidth = 2; }; - DEDFE6550F7B3B830035BD10 /* ToolChains.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ToolChains.cpp; path = lib/Driver/ToolChains.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6560F7B3B830035BD10 /* ToolChain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = ToolChain.cpp; path = lib/Driver/ToolChain.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6570F7B3B830035BD10 /* Tool.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Tool.cpp; path = lib/Driver/Tool.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6580F7B3B830035BD10 /* HostInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = HostInfo.cpp; path = lib/Driver/HostInfo.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFE6590F7B3B830035BD10 /* Driver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = Driver.cpp; path = lib/Driver/Driver.cpp; sourceTree = ""; tabWidth = 2; }; - DEDFF87F0F848CE30035BD10 /* TemplateName.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TemplateName.h; path = clang/AST/TemplateName.h; sourceTree = ""; tabWidth = 2; }; - DEDFFF070F959EE60035BD10 /* Diagnostic.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Diagnostic.td; sourceTree = ""; }; - DEDFFF530F9704580035BD10 /* DiagnosticGroups.td */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DiagnosticGroups.td; sourceTree = ""; }; - DEEBBD430C19C5D200A9FE82 /* TODO.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = TODO.txt; sourceTree = ""; }; - DEEBC3B90C2363B800A9FE82 /* CodeGenTypes.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = CodeGenTypes.h; path = lib/CodeGen/CodeGenTypes.h; sourceTree = ""; tabWidth = 2; }; - DEEBC3BB0C2363BC00A9FE82 /* CodeGenTypes.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CodeGenTypes.cpp; path = lib/CodeGen/CodeGenTypes.cpp; sourceTree = ""; tabWidth = 2; }; - DEF161600F65C81C0098507F /* TextDiagnosticBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TextDiagnosticBuffer.h; path = clang/Frontend/TextDiagnosticBuffer.h; sourceTree = ""; }; - DEF161630F65C81C0098507F /* TextDiagnosticPrinter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TextDiagnosticPrinter.h; path = clang/Frontend/TextDiagnosticPrinter.h; sourceTree = ""; }; - DEF165140F8D46980098507F /* Tool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Tool.h; path = clang/Driver/Tool.h; sourceTree = ""; }; - DEF165150F8D46980098507F /* Types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Types.h; path = clang/Driver/Types.h; sourceTree = ""; }; - DEF165160F8D46980098507F /* Action.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Action.h; path = clang/Driver/Action.h; sourceTree = ""; }; - DEF165170F8D46980098507F /* Compilation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Compilation.h; path = clang/Driver/Compilation.h; sourceTree = ""; }; - DEF165190F8D46980098507F /* Option.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Option.h; path = clang/Driver/Option.h; sourceTree = ""; }; - DEF1651A0F8D46980098507F /* Types.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Types.def; path = clang/Driver/Types.def; sourceTree = ""; }; - DEF1651B0F8D46980098507F /* ToolChain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ToolChain.h; path = clang/Driver/ToolChain.h; sourceTree = ""; }; - DEF1651C0F8D46980098507F /* Options.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Options.h; path = clang/Driver/Options.h; sourceTree = ""; }; - DEF1651D0F8D46980098507F /* ArgList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ArgList.h; path = clang/Driver/ArgList.h; sourceTree = ""; }; - DEF1651E0F8D46980098507F /* Arg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Arg.h; path = clang/Driver/Arg.h; sourceTree = ""; }; - DEF1651F0F8D46980098507F /* HostInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HostInfo.h; path = clang/Driver/HostInfo.h; sourceTree = ""; }; - DEF165200F8D46980098507F /* Driver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Driver.h; path = clang/Driver/Driver.h; sourceTree = ""; }; - DEF165210F8D46980098507F /* Job.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Job.h; path = clang/Driver/Job.h; sourceTree = ""; }; - DEF165220F8D46980098507F /* Util.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Util.h; path = clang/Driver/Util.h; sourceTree = ""; }; - DEF165230F8D46980098507F /* Phases.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Phases.h; path = clang/Driver/Phases.h; sourceTree = ""; }; - DEF165240F8D46980098507F /* DriverDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DriverDiagnostic.h; path = clang/Driver/DriverDiagnostic.h; sourceTree = ""; }; - DEF169220F9645960098507F /* FrontendDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FrontendDiagnostic.h; path = clang/Frontend/FrontendDiagnostic.h; sourceTree = ""; }; - DEF1692C0F9645BF0098507F /* AnalysisDiagnostic.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = AnalysisDiagnostic.h; path = clang/Analysis/AnalysisDiagnostic.h; sourceTree = ""; tabWidth = 2; }; - DEF16BE40FA13A5B0098507F /* TypeNodes.def */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = text; name = TypeNodes.def; path = clang/AST/TypeNodes.def; sourceTree = ""; tabWidth = 2; }; - DEF16BE50FA13A650098507F /* TypeOrdering.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; name = TypeOrdering.h; path = clang/AST/TypeOrdering.h; sourceTree = ""; tabWidth = 2; }; - DEF2E95E0C5FBD74000C4259 /* InternalsManual.html */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.html; name = InternalsManual.html; path = docs/InternalsManual.html; sourceTree = ""; }; - DEF2EFF20C6CDD74000C4259 /* CGExprAgg.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = CGExprAgg.cpp; path = lib/CodeGen/CGExprAgg.cpp; sourceTree = ""; tabWidth = 2; }; - DEF2F00F0C6CFED5000C4259 /* SemaChecking.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 2; lastKnownFileType = sourcecode.cpp.cpp; name = SemaChecking.cpp; path = lib/Sema/SemaChecking.cpp; sourceTree = ""; tabWidth = 2; }; - DEF7D9F60C9C8B1A0001F598 /* Rewriter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = Rewriter.h; path = clang/Rewrite/Rewriter.h; sourceTree = ""; }; - DEF7D9F80C9C8B1D0001F598 /* Rewriter.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Rewriter.cpp; path = lib/Rewrite/Rewriter.cpp; sourceTree = ""; }; - DEFFECA30DB093D100B4E7C3 /* DeltaTree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeltaTree.h; path = clang/Rewrite/DeltaTree.h; sourceTree = ""; }; - DEFFECA60DB1546600B4E7C3 /* DeltaTree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DeltaTree.cpp; path = lib/Rewrite/DeltaTree.cpp; sourceTree = ""; }; - E16B523410D30B2400430AC9 /* cc1_main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cc1_main.cpp; path = tools/driver/cc1_main.cpp; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 8DD76F660486A84900D96B5E /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 08FB7794FE84155DC02AAC07 /* clang */ = { - isa = PBXGroup; - children = ( - DED7D72E0A524295003AD0FB /* include */, - 08FB7795FE84155DC02AAC07 /* Libraries */, - DEDFE61F0F7B3AE10035BD10 /* Tools */, - C6859E8C029090F304C91782 /* Documentation */, - 1AB674ADFE9D54B511CA2CBB /* Products */, - ); - name = clang; - sourceTree = ""; - }; - 08FB7795FE84155DC02AAC07 /* Libraries */ = { - isa = PBXGroup; - children = ( - BB20603A131EDDBF003C3343 /* ARRMigrate */, - BBA5AB121309C2FA000B38F1 /* StaticAnalyzer */, - 57EB5660121B034300ECA335 /* Serialization */, - BFE2F67911DA95590007EDC0 /* Rewrite */, - 90FD6D6C103C3D2D005F5B73 /* Index */, - DED7D7500A5242C7003AD0FB /* Basic */, - DED7D78C0A5242E6003AD0FB /* Lex */, - DE1F22600A7D8C9B00FBF588 /* Parse */, - DEC8D9920A9433F400353FCA /* AST */, - DE67E7070C020EAB00F66BC5 /* Sema */, - DE927FCC0C0557CD00231DA4 /* CodeGen */, - 356EF9B30C8F7DCA006650F5 /* Analysis */, - 1AC1A6871299A284006FBC77 /* Checker */, - DEF7D9F50C9C8B0C0001F598 /* Rewrite */, - 352246E00F5C6BC000D0D279 /* Frontend */, - DEDFE6470F7B3B560035BD10 /* Driver */, - ); - name = Libraries; - sourceTree = ""; - }; - 1AB674ADFE9D54B511CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 8DD76F6C0486A84900D96B5E /* clang */, - ); - name = Products; - sourceTree = ""; - }; - 1AC1A6871299A284006FBC77 /* Checker */ = { - isa = PBXGroup; - children = ( - 1AC1A6881299A284006FBC77 /* AdjustedReturnValueChecker.cpp */, - 1AC1A6891299A284006FBC77 /* AggExprVisitor.cpp */, - 1AC1A68A1299A284006FBC77 /* AnalysisConsumer.cpp */, - 1AC1A68B1299A284006FBC77 /* AnalysisManager.cpp */, - 1AC1A68C1299A284006FBC77 /* AnalyzerStatsChecker.cpp */, - 1AC1A68D1299A284006FBC77 /* ArrayBoundChecker.cpp */, - 1AC1A68E1299A284006FBC77 /* AttrNonNullChecker.cpp */, - 1AC1A68F1299A284006FBC77 /* BasicConstraintManager.cpp */, - 1AC1A6901299A284006FBC77 /* BasicObjCFoundationChecks.cpp */, - 1AC1A6911299A284006FBC77 /* BasicObjCFoundationChecks.h */, - 1AC1A6921299A284006FBC77 /* BasicStore.cpp */, - 1AC1A6931299A284006FBC77 /* BasicValueFactory.cpp */, - 1AC1A6941299A284006FBC77 /* BugReporter.cpp */, - 1AC1A6951299A284006FBC77 /* BugReporterVisitors.cpp */, - 1AC1A6961299A284006FBC77 /* BuiltinFunctionChecker.cpp */, - 1AC1A6971299A284006FBC77 /* CallAndMessageChecker.cpp */, - 1AC1A6981299A284006FBC77 /* CastSizeChecker.cpp */, - 1AC1A6991299A284006FBC77 /* CastToStructChecker.cpp */, - 1AC1A69A1299A284006FBC77 /* CFRefCount.cpp */, - 1AC1A69B1299A284006FBC77 /* CheckDeadStores.cpp */, - 1AC1A69C1299A284006FBC77 /* Checker.cpp */, - 1AC1A69D1299A284006FBC77 /* CheckerHelpers.cpp */, - 1AC1A69E1299A284006FBC77 /* CheckObjCDealloc.cpp */, - 1AC1A69F1299A284006FBC77 /* CheckObjCInstMethSignature.cpp */, - 1AC1A6A01299A284006FBC77 /* CheckSecuritySyntaxOnly.cpp */, - 1AC1A6A11299A284006FBC77 /* CheckSizeofPointer.cpp */, - 1AC1A6A21299A284006FBC77 /* ChrootChecker.cpp */, - 1AC1A6A41299A284006FBC77 /* CocoaConventions.cpp */, - 1AC1A6A51299A284006FBC77 /* CStringChecker.cpp */, - 1AC1A7DC1299A285006FBC77 /* DereferenceChecker.cpp */, - 1AC1A7DD1299A285006FBC77 /* DivZeroChecker.cpp */, - 1AC1A7DE1299A285006FBC77 /* Environment.cpp */, - 1AC1A7DF1299A285006FBC77 /* ExplodedGraph.cpp */, - 1AC1A7E01299A285006FBC77 /* FixedAddressChecker.cpp */, - 1AC1A7E11299A285006FBC77 /* FlatStore.cpp */, - 1AC1A7E21299A285006FBC77 /* FrontendActions.cpp */, - 1AC1A7E31299A285006FBC77 /* GRBlockCounter.cpp */, - 1AC1A7E41299A285006FBC77 /* GRCoreEngine.cpp */, - 1AC1A7E51299A285006FBC77 /* GRCXXExprEngine.cpp */, - 1AC1A7E61299A285006FBC77 /* GRExprEngine.cpp */, - 1AC1A7E71299A285006FBC77 /* GRExprEngineExperimentalChecks.cpp */, - 1AC1A7E81299A285006FBC77 /* GRExprEngineExperimentalChecks.h */, - 1AC1A7E91299A285006FBC77 /* GRExprEngineInternalChecks.h */, - 1AC1A7EA1299A285006FBC77 /* GRState.cpp */, - 1AC1A7EB1299A285006FBC77 /* HTMLDiagnostics.cpp */, - 1AC1A7EC1299A285006FBC77 /* IdempotentOperationChecker.cpp */, - 1AC1A7ED1299A285006FBC77 /* LLVMConventionsChecker.cpp */, - 1AC1A7EE1299A285006FBC77 /* MacOSXAPIChecker.cpp */, - 1AC1A7F01299A285006FBC77 /* MallocChecker.cpp */, - 1AC1A7F11299A285006FBC77 /* ManagerRegistry.cpp */, - 1AC1A7F21299A285006FBC77 /* MemRegion.cpp */, - 1AC1A7F31299A285006FBC77 /* NoReturnFunctionChecker.cpp */, - 1AC1A7F41299A285006FBC77 /* NSAutoreleasePoolChecker.cpp */, - 1AC1A7F51299A285006FBC77 /* NSErrorChecker.cpp */, - 1AC1A7F61299A285006FBC77 /* ObjCAtSyncChecker.cpp */, - 1AC1A7F71299A285006FBC77 /* ObjCUnusedIVarsChecker.cpp */, - 1AC1A7F81299A285006FBC77 /* OSAtomicChecker.cpp */, - 1AC1A7F91299A285006FBC77 /* PathDiagnostic.cpp */, - 1AC1A7FA1299A285006FBC77 /* PlistDiagnostics.cpp */, - 1AC1A7FB1299A285006FBC77 /* PointerArithChecker.cpp */, - 1AC1A7FC1299A285006FBC77 /* PointerSubChecker.cpp */, - 1AC1A7FD1299A285006FBC77 /* PthreadLockChecker.cpp */, - 1AC1A7FE1299A285006FBC77 /* RangeConstraintManager.cpp */, - 1AC1A8001299A285006FBC77 /* RegionStore.cpp */, - 1AC1A9DB1299A287006FBC77 /* ReturnPointerRangeChecker.cpp */, - 1AC1A9DC1299A287006FBC77 /* ReturnUndefChecker.cpp */, - 1AC1A9DD1299A287006FBC77 /* SimpleConstraintManager.cpp */, - 1AC1A9DE1299A287006FBC77 /* SimpleConstraintManager.h */, - 1AC1A9DF1299A287006FBC77 /* SimpleSValuator.cpp */, - 1AC1A9E01299A287006FBC77 /* StackAddrLeakChecker.cpp */, - 1AC1A9E11299A287006FBC77 /* Store.cpp */, - 1AC1A9E21299A287006FBC77 /* StreamChecker.cpp */, - 1AC1A9E31299A287006FBC77 /* SVals.cpp */, - 1AC1A9E41299A287006FBC77 /* SValuator.cpp */, - 1AC1A9E51299A287006FBC77 /* SymbolManager.cpp */, - 1AC1A9E61299A287006FBC77 /* UndefBranchChecker.cpp */, - 1AC1A9E71299A287006FBC77 /* UndefCapturedBlockVarChecker.cpp */, - 1AC1A9E81299A287006FBC77 /* UndefinedArraySubscriptChecker.cpp */, - 1AC1A9E91299A287006FBC77 /* UndefinedAssignmentChecker.cpp */, - 1AC1A9EA1299A287006FBC77 /* UndefResultChecker.cpp */, - 1AC1A9EB1299A287006FBC77 /* UnixAPIChecker.cpp */, - 1AC1A9EC1299A287006FBC77 /* UnreachableCodeChecker.cpp */, - 1AC1A9ED1299A287006FBC77 /* ValueManager.cpp */, - 1AC1A9EE1299A287006FBC77 /* VLASizeChecker.cpp */, - ); - name = Checker; - path = lib/Checker; - sourceTree = ""; - }; - 352246E00F5C6BC000D0D279 /* Frontend */ = { - isa = PBXGroup; - children = ( - 1AFDD8701161085D00AE030A /* ASTMerge.cpp */, - 9012911C1048068D0083456D /* ASTUnit.cpp */, - 1A2A54A50FD1DD1C00F4CE45 /* ASTConsumers.cpp */, - 1A2A54A70FD1DD1C00F4CE45 /* CacheTokens.cpp */, - DE4DC7A20EA1C33E00069E5A /* TokenRewriter.cpp */, - 1ACB57DB1105820D0047B991 /* CompilerInstance.cpp */, - 1ACB57DC1105820D0047B991 /* CompilerInvocation.cpp */, - 1ACB57DD1105820D0047B991 /* DeclXML.cpp */, - 1A2A54A80FD1DD1C00F4CE45 /* DependencyFile.cpp */, - 1A2A54A90FD1DD1C00F4CE45 /* DiagChecker.cpp */, - 1A2A54AA0FD1DD1C00F4CE45 /* DocumentXML.cpp */, - 1ACB57DE1105820D0047B991 /* FrontendAction.cpp */, - 1ACB57DF1105820D0047B991 /* FrontendActions.cpp */, - 1ACB57E01105820D0047B991 /* FrontendOptions.cpp */, - 352246E20F5C6BE000D0D279 /* InitHeaderSearch.cpp */, - DECB6F060F9D93A800F5FBC7 /* InitPreprocessor.cpp */, - 1ACB57E11105820D0047B991 /* LangStandards.cpp */, - 1A2A54AE0FD1DD1C00F4CE45 /* PrintPreprocessedOutput.cpp */, - 352246E50F5C6BE000D0D279 /* TextDiagnosticBuffer.cpp */, - 352246E60F5C6BE000D0D279 /* TextDiagnosticPrinter.cpp */, - 1ACB57E21105820D0047B991 /* TypeXML.cpp */, - 1A2A54B30FD1DD1C00F4CE45 /* StmtXML.cpp */, - 1ACB57E31105820D0047B991 /* VerifyDiagnosticsClient.cpp */, - 1A2A54B40FD1DD1C00F4CE45 /* Warnings.cpp */, - ); - name = Frontend; - sourceTree = ""; - }; - 352C19DB0CA321AC0045DB98 /* Visitors */ = { - isa = PBXGroup; - children = ( - 352C19DC0CA321C80045DB98 /* CFGRecStmtDeclVisitor.h */, - 352C19DD0CA321C80045DB98 /* CFGRecStmtVisitor.h */, - 352C19DE0CA321C80045DB98 /* CFGStmtVisitor.h */, - 352C19DF0CA321C80045DB98 /* CFGVarDeclVisitor.h */, - ); - name = Visitors; - sourceTree = ""; - }; - 356EF9AF0C8F7DA4006650F5 /* Analysis */ = { - isa = PBXGroup; - children = ( - 1AECEFAF12DE387800F1D539 /* AnalysisContext.h */, - 1AECEFB012DE387800F1D539 /* CFG.h */, - 1AECEFB112DE387800F1D539 /* CFGStmtMap.h */, - DEF1692C0F9645BF0098507F /* AnalysisDiagnostic.h */, - 35A8FCF60D9B4ADD001C2F97 /* ProgramPoint.h */, - 35F9B1540D1C6AFC00DDFDAE /* Analyses */, - 35D1DDCF0CA9C6BE0096E967 /* FlowSensitive */, - DE4121130D7F1B980080F80A /* PathSensitive */, - 35F9B1520D1C6ACB00DDFDAE /* Support */, - 352C19DB0CA321AC0045DB98 /* Visitors */, - ); - name = Analysis; - sourceTree = ""; - }; - 356EF9B30C8F7DCA006650F5 /* Analysis */ = { - isa = PBXGroup; - children = ( - 1AC1A67212999D8E006FBC77 /* AnalysisContext.cpp */, - 1AC1A67312999D8E006FBC77 /* CFG.cpp */, - 1AC1A67412999D8E006FBC77 /* CFGStmtMap.cpp */, - 1AC1A67512999D8E006FBC77 /* FormatString.cpp */, - 1AC1A67612999D8E006FBC77 /* FormatStringParsing.h */, - 1AC1A67712999D8E006FBC77 /* LiveVariables.cpp */, - 1AC1A67812999D8E006FBC77 /* PrintfFormatString.cpp */, - 1AC1A67912999D8E006FBC77 /* PseudoConstantAnalysis.cpp */, - 1AC1A67A12999D8E006FBC77 /* ReachableCode.cpp */, - 1AC1A67B12999D8E006FBC77 /* ScanfFormatString.cpp */, - 1AC1A67C12999D8E006FBC77 /* UninitializedValues.cpp */, - ); - name = Analysis; - sourceTree = ""; - }; - 35D1DDCF0CA9C6BE0096E967 /* FlowSensitive */ = { - isa = PBXGroup; - children = ( - 35D1DDD10CA9C6D50096E967 /* DataflowSolver.h */, - 35D1DDD20CA9C6D50096E967 /* DataflowValues.h */, - ); - name = FlowSensitive; - sourceTree = ""; - }; - 35F9B1520D1C6ACB00DDFDAE /* Support */ = { - isa = PBXGroup; - children = ( - 3537AA0C0ECD088F008F7CDC /* BlkExprDeclBitVector.h */, - ); - name = Support; - sourceTree = ""; - }; - 35F9B1540D1C6AFC00DDFDAE /* Analyses */ = { - isa = PBXGroup; - children = ( - 35F9B1550D1C6B2E00DDFDAE /* LiveVariables.h */, - 35F9B1560D1C6B2E00DDFDAE /* UninitializedValues.h */, - ); - name = Analyses; - sourceTree = ""; - }; - 57EB5654121B023900ECA335 /* Serialization */ = { - isa = PBXGroup; - children = ( - BF9FEDBA1225E30E003A8B71 /* ASTBitCodes.h */, - 57E15B21121C8D2B0051C2CC /* ASTDeserializationListener.h */, - 57E15B22121C8D2B0051C2CC /* ASTReader.h */, - 574F4C25121B4EF000AEAC20 /* ASTWriter.h */, - ); - name = Serialization; - sourceTree = ""; - }; - 57EB5660121B034300ECA335 /* Serialization */ = { - isa = PBXGroup; - children = ( - 57AA924D121C8B9400B4AA6C /* ASTReader.cpp */, - 57AA924E121C8B9400B4AA6C /* ASTReaderDecl.cpp */, - 57AA924F121C8B9400B4AA6C /* ASTReaderStmt.cpp */, - 57F6660F121B4DE600DCE3B7 /* ASTWriter.cpp */, - 57F66610121B4DE600DCE3B7 /* ASTWriterDecl.cpp */, - 57F66611121B4DE600DCE3B7 /* ASTWriterStmt.cpp */, - ); - name = Serialization; - path = lib/Serialization; - sourceTree = ""; - }; - 9012911210470FAF0083456D /* clang-c */ = { - isa = PBXGroup; - children = ( - 9012911510470FCE0083456D /* Index.h */, - ); - name = "clang-c"; - sourceTree = ""; - }; - 9012911E104812DA0083456D /* CIndex */ = { - isa = PBXGroup; - children = ( - 9012911F104812F90083456D /* CIndex.cpp */, - 1A621C3B11111D61009E6834 /* CIndexer.cpp */, - 1A621C3A11111D61009E6834 /* CIndexCodeCompletion.cpp */, - 1A621C3C11111D61009E6834 /* CIndexer.h */, - 1A621C3D11111D61009E6834 /* CIndexInclusionStack.cpp */, - 1A621C3E11111D61009E6834 /* CIndexUSRs.cpp */, - 1A621C3F11111D61009E6834 /* CXCursor.cpp */, - 1A621C4011111D61009E6834 /* CXCursor.h */, - 1A621C4111111D61009E6834 /* CXSourceLocation.h */, - ); - name = CIndex; - sourceTree = ""; - }; - 90F9EFA8104ABDC400D09A15 /* c-index-test */ = { - isa = PBXGroup; - children = ( - 90F9EFA9104ABDED00D09A15 /* c-index-test.c */, - ); - name = "c-index-test"; - sourceTree = ""; - }; - 90FD6D5E103C3D03005F5B73 /* Index */ = { - isa = PBXGroup; - children = ( - 90FD6D5F103C3D21005F5B73 /* Analyzer.h */, - 90FD6D60103C3D21005F5B73 /* ASTLocation.h */, - 90FD6D61103C3D21005F5B73 /* DeclReferenceMap.h */, - 90FD6D62103C3D21005F5B73 /* Entity.h */, - 90FD6D63103C3D21005F5B73 /* GlobalSelector.h */, - 90FD6D64103C3D21005F5B73 /* Handlers.h */, - 90FD6D65103C3D21005F5B73 /* Indexer.h */, - 90FD6D66103C3D21005F5B73 /* IndexProvider.h */, - 90FD6D67103C3D21005F5B73 /* Program.h */, - 90FD6D68103C3D21005F5B73 /* SelectorMap.h */, - 90FD6D69103C3D21005F5B73 /* STLExtras.h */, - 90FD6D6A103C3D21005F5B73 /* TranslationUnit.h */, - 90FD6D6B103C3D21005F5B73 /* Utils.h */, - ); - name = Index; - sourceTree = ""; - }; - 90FD6D6C103C3D2D005F5B73 /* Index */ = { - isa = PBXGroup; - children = ( - 90FD6D6D103C3D49005F5B73 /* Analyzer.cpp */, - 90FD6D6E103C3D49005F5B73 /* ASTLocation.cpp */, - 90FD6D6F103C3D49005F5B73 /* ASTVisitor.h */, - 90FD6D70103C3D49005F5B73 /* DeclReferenceMap.cpp */, - 90FD6D71103C3D49005F5B73 /* Entity.cpp */, - 90FD6D72103C3D49005F5B73 /* EntityImpl.h */, - 90FD6D73103C3D49005F5B73 /* GlobalSelector.cpp */, - 90FD6D74103C3D49005F5B73 /* Handlers.cpp */, - 90FD6D75103C3D49005F5B73 /* Indexer.cpp */, - 90FD6D76103C3D49005F5B73 /* IndexProvider.cpp */, - 90FD6D77103C3D49005F5B73 /* Program.cpp */, - 90FD6D78103C3D49005F5B73 /* ProgramImpl.h */, - 90FD6D7A103C3D49005F5B73 /* SelectorMap.cpp */, - ); - name = Index; - sourceTree = ""; - }; - 90FD6DB4103D9763005F5B73 /* index-test */ = { - isa = PBXGroup; - children = ( - 90FD6DB5103D977E005F5B73 /* index-test.cpp */, - ); - name = "index-test"; - sourceTree = ""; - }; - BB20603A131EDDBF003C3343 /* ARRMigrate */ = { - isa = PBXGroup; - children = ( - BB20603B131EDDBF003C3343 /* CMakeLists.txt */, - BB20603C131EDDBF003C3343 /* Makefile */, - BDDF60E91337BF40009F1764 /* Transforms.cpp */, - ); - name = ARRMigrate; - path = lib/ARRMigrate; - sourceTree = ""; - }; - BB206040131EDDDA003C3343 /* ARRMigrate */ = { - isa = PBXGroup; - children = ( - BB206041131EDDDA003C3343 /* ARRMT.h */, - ); - name = ARRMigrate; - path = clang/ARRMigrate; - sourceTree = ""; - }; - BB206042131EDE03003C3343 /* arrmt-test */ = { - isa = PBXGroup; - children = ( - BD8A47E7133D32660066FE40 /* ARRMT.cpp */, - BB206043131EDE03003C3343 /* arrmt-test.cpp */, - BB206044131EDE03003C3343 /* CMakeLists.txt */, - BB206045131EDE03003C3343 /* Makefile */, - ); - name = "arrmt-test"; - path = "tools/arrmt-test"; - sourceTree = ""; - }; - BBA5AB121309C2FA000B38F1 /* StaticAnalyzer */ = { - isa = PBXGroup; - children = ( - BBA5AB131309C2FA000B38F1 /* Checkers */, - BBA5AB511309C2FA000B38F1 /* Core */, - BBA5AB751309C2FA000B38F1 /* Frontend */, - ); - name = StaticAnalyzer; - path = lib/StaticAnalyzer; - sourceTree = ""; - }; - BBA5AB131309C2FA000B38F1 /* Checkers */ = { - isa = PBXGroup; - children = ( - BBA5AB141309C2FA000B38F1 /* AdjustedReturnValueChecker.cpp */, - BBA5AB151309C2FA000B38F1 /* AnalyzerStatsChecker.cpp */, - BBA5AB161309C2FA000B38F1 /* ArrayBoundChecker.cpp */, - BBA5AB171309C2FA000B38F1 /* ArrayBoundCheckerV2.cpp */, - BBA5AB181309C2FA000B38F1 /* AttrNonNullChecker.cpp */, - BBA5AB191309C2FA000B38F1 /* BasicObjCFoundationChecks.cpp */, - BBA5AB1A1309C2FA000B38F1 /* BasicObjCFoundationChecks.h */, - BBA5AB1B1309C2FA000B38F1 /* BuiltinFunctionChecker.cpp */, - BBA5AB1C1309C2FA000B38F1 /* CallAndMessageChecker.cpp */, - BBA5AB1D1309C2FA000B38F1 /* CastSizeChecker.cpp */, - BBA5AB1E1309C2FA000B38F1 /* CastToStructChecker.cpp */, - BBA5AB1F1309C2FA000B38F1 /* Checkers.td */, - BBA5AB201309C2FA000B38F1 /* CheckObjCDealloc.cpp */, - BBA5AB211309C2FA000B38F1 /* CheckObjCInstMethSignature.cpp */, - BBA5AB221309C2FA000B38F1 /* CheckSecuritySyntaxOnly.cpp */, - BBA5AB231309C2FA000B38F1 /* CheckSizeofPointer.cpp */, - BBA5AB241309C2FA000B38F1 /* ChrootChecker.cpp */, - BBA5AB251309C2FA000B38F1 /* ClangSACheckerProvider.cpp */, - BBA5AB261309C2FA000B38F1 /* ClangSACheckerProvider.h */, - BBA5AB271309C2FA000B38F1 /* ClangSACheckers.h */, - BBA5AB291309C2FA000B38F1 /* CStringChecker.cpp */, - BBA5AB2A1309C2FA000B38F1 /* DeadStoresChecker.cpp */, - BBA5AB2B1309C2FA000B38F1 /* DereferenceChecker.cpp */, - BBA5AB2C1309C2FA000B38F1 /* DivZeroChecker.cpp */, - BBA5AB2D1309C2FA000B38F1 /* ExperimentalChecks.cpp */, - BBA5AB2E1309C2FA000B38F1 /* ExperimentalChecks.h */, - BBA5AB2F1309C2FA000B38F1 /* ExprEngine.cpp */, - BBA5AB301309C2FA000B38F1 /* FixedAddressChecker.cpp */, - BBA5AB311309C2FA000B38F1 /* IdempotentOperationChecker.cpp */, - BBA5AB321309C2FA000B38F1 /* InternalChecks.h */, - BBA5AB331309C2FA000B38F1 /* LLVMConventionsChecker.cpp */, - BBA5AB341309C2FA000B38F1 /* MacOSXAPIChecker.cpp */, - BBA5AB361309C2FA000B38F1 /* MallocChecker.cpp */, - BBA5AB371309C2FA000B38F1 /* NoReturnFunctionChecker.cpp */, - BBA5AB381309C2FA000B38F1 /* NSAutoreleasePoolChecker.cpp */, - BBA5AB3A1309C2FA000B38F1 /* NSErrorChecker.cpp */, - BBA5AB3B1309C2FA000B38F1 /* ObjCAtSyncChecker.cpp */, - BBA5AB3D1309C2FA000B38F1 /* ObjCSelfInitChecker.cpp */, - BBA5AB3F1309C2FA000B38F1 /* ObjCUnusedIVarsChecker.cpp */, - BBA5AB401309C2FA000B38F1 /* OSAtomicChecker.cpp */, - BBA5AB411309C2FA000B38F1 /* PointerArithChecker.cpp */, - BBA5AB421309C2FA000B38F1 /* PointerSubChecker.cpp */, - BBA5AB431309C2FA000B38F1 /* PthreadLockChecker.cpp */, - BBA5AB441309C2FA000B38F1 /* ReturnPointerRangeChecker.cpp */, - BBA5AB451309C2FA000B38F1 /* ReturnUndefChecker.cpp */, - BBA5AB461309C2FA000B38F1 /* StackAddrLeakChecker.cpp */, - BBA5AB471309C2FA000B38F1 /* StreamChecker.cpp */, - BBA5AB481309C2FA000B38F1 /* UndefBranchChecker.cpp */, - BBA5AB491309C2FA000B38F1 /* UndefCapturedBlockVarChecker.cpp */, - BBA5AB4A1309C2FA000B38F1 /* UndefinedArraySubscriptChecker.cpp */, - BBA5AB4B1309C2FA000B38F1 /* UndefinedAssignmentChecker.cpp */, - BBA5AB4C1309C2FA000B38F1 /* UndefResultChecker.cpp */, - BBA5AB4D1309C2FA000B38F1 /* UnixAPIChecker.cpp */, - BBA5AB4E1309C2FA000B38F1 /* UnreachableCodeChecker.cpp */, - BBA5AB4F1309C2FA000B38F1 /* VLASizeChecker.cpp */, - ); - path = Checkers; - sourceTree = ""; - }; - BBA5AB511309C2FA000B38F1 /* Core */ = { - isa = PBXGroup; - children = ( - BBA5AB521309C2FA000B38F1 /* AggExprVisitor.cpp */, - BBA5AB531309C2FA000B38F1 /* AnalysisManager.cpp */, - BBA5AB541309C2FA000B38F1 /* BasicConstraintManager.cpp */, - BBA5AB551309C2FA000B38F1 /* BasicStore.cpp */, - BBA5AB561309C2FA000B38F1 /* BasicValueFactory.cpp */, - BBA5AB571309C2FA000B38F1 /* BlockCounter.cpp */, - BBA5AB581309C2FA000B38F1 /* BugReporter.cpp */, - BBA5AB591309C2FA000B38F1 /* BugReporterVisitors.cpp */, - BBA5AB5A1309C2FA000B38F1 /* CFRefCount.cpp */, - BBA5AB5B1309C2FA000B38F1 /* Checker.cpp */, - BBA5AB5C1309C2FA000B38F1 /* CheckerHelpers.cpp */, - BBA5AB5D1309C2FA000B38F1 /* CheckerManager.cpp */, - BBA5AB5F1309C2FA000B38F1 /* CoreEngine.cpp */, - BBA5AB601309C2FA000B38F1 /* CXXExprEngine.cpp */, - BBA5AB611309C2FA000B38F1 /* Environment.cpp */, - BBA5AB621309C2FA000B38F1 /* ExplodedGraph.cpp */, - BBA5AB631309C2FA000B38F1 /* FlatStore.cpp */, - BBA5AB641309C2FA000B38F1 /* GRState.cpp */, - BBA5AB651309C2FA000B38F1 /* HTMLDiagnostics.cpp */, - BBA5AB671309C2FA000B38F1 /* MemRegion.cpp */, - BBA5AB681309C2FA000B38F1 /* ObjCMessage.cpp */, - BBA5AB691309C2FA000B38F1 /* PathDiagnostic.cpp */, - BBA5AB6A1309C2FA000B38F1 /* PlistDiagnostics.cpp */, - BBA5AB6B1309C2FA000B38F1 /* RangeConstraintManager.cpp */, - BBA5AB6C1309C2FA000B38F1 /* RegionStore.cpp */, - BBA5AB6D1309C2FA000B38F1 /* SimpleConstraintManager.cpp */, - BBA5AB6E1309C2FA000B38F1 /* SimpleConstraintManager.h */, - BBA5AB6F1309C2FA000B38F1 /* SimpleSValBuilder.cpp */, - BBA5AB701309C2FA000B38F1 /* Store.cpp */, - BBA5AB711309C2FA000B38F1 /* SValBuilder.cpp */, - BBA5AB721309C2FA000B38F1 /* SVals.cpp */, - BBA5AB731309C2FA000B38F1 /* SymbolManager.cpp */, - BBA5AB741309C2FA000B38F1 /* TextPathDiagnostics.cpp */, - ); - path = Core; - sourceTree = ""; - }; - BBA5AB751309C2FA000B38F1 /* Frontend */ = { - isa = PBXGroup; - children = ( - BBA5AB761309C2FA000B38F1 /* AnalysisConsumer.cpp */, - BBA5AB771309C2FA000B38F1 /* AnalysisConsumer.h */, - BBA5AB781309C2FA000B38F1 /* CheckerRegistration.cpp */, - BBA5AB7A1309C2FA000B38F1 /* FrontendActions.cpp */, - ); - path = Frontend; - sourceTree = ""; - }; - BFE2F67911DA95590007EDC0 /* Rewrite */ = { - isa = PBXGroup; - children = ( - BFE2F69311DA955A0007EDC0 /* DeltaTree.cpp */, - BFE2F69411DA955A0007EDC0 /* FixItRewriter.cpp */, - BFE2F69511DA955A0007EDC0 /* FrontendActions.cpp */, - BFE2F69611DA955A0007EDC0 /* HTMLPrint.cpp */, - BFE2F69711DA955A0007EDC0 /* HTMLRewrite.cpp */, - BFE2F6A511DA955A0007EDC0 /* RewriteMacros.cpp */, - BFE2F6A611DA955A0007EDC0 /* RewriteObjC.cpp */, - BFE2F6A711DA955A0007EDC0 /* Rewriter.cpp */, - BFE2F6A811DA955A0007EDC0 /* RewriteRope.cpp */, - BFE2F6A911DA955A0007EDC0 /* RewriteTest.cpp */, - BFE2F6AA11DA955A0007EDC0 /* TokenRewriter.cpp */, - ); - name = Rewrite; - path = lib/Rewrite; - sourceTree = ""; - }; - C6859E8C029090F304C91782 /* Documentation */ = { - isa = PBXGroup; - children = ( - DEAEED4A0A5AF89A0045101B /* NOTES.txt */, - DED7D7D70A524302003AD0FB /* README.txt */, - DEEBBD430C19C5D200A9FE82 /* TODO.txt */, - DEF2E95E0C5FBD74000C4259 /* InternalsManual.html */, - ); - name = Documentation; - sourceTree = ""; - }; - DE1F21F20A7D84E800FBF588 /* Parse */ = { - isa = PBXGroup; - children = ( - BF9FEDB51225E213003A8B71 /* ParseAST.h */, - DEA09A860F3175CA000C2258 /* ParseDiagnostic.h */, - DE1F22020A7D852A00FBF588 /* Parser.h */, - ); - name = Parse; - sourceTree = ""; - }; - DE1F22600A7D8C9B00FBF588 /* Parse */ = { - isa = PBXGroup; - children = ( - BF9FEE511226FE9F003A8B71 /* ParseAST.cpp */, - DE34600E0AFDCCCE00DBC861 /* ParseDecl.cpp */, - DE2255FB0C8004E600D370A5 /* ParseDeclCXX.cpp */, - DE3460120AFDCCDA00DBC861 /* ParseExpr.cpp */, - DE06756B0C051CFE00EBBFD8 /* ParseExprCXX.cpp */, - 3534A01C0E129849002709B2 /* ParseCXXInlineMethods.cpp */, - DE3460040AFDCC6500DBC861 /* ParseInit.cpp */, - DE345FFF0AFDCC1900DBC861 /* ParseObjc.cpp */, - 3551068F0E9A857C006A4E44 /* ParsePragma.h */, - 3551068A0E9A8546006A4E44 /* ParsePragma.cpp */, - DE34600A0AFDCCBF00DBC861 /* ParseStmt.cpp */, - 353959D40EE5F88A00E82461 /* ParseTemplate.cpp */, - 3551068B0E9A8546006A4E44 /* ParseTentative.cpp */, - DE06D42F0A8BB52D0050E87E /* Parser.cpp */, - BF9FEE531226FEC1003A8B71 /* RAIIObjectsForParser.h */, - ); - name = Parse; - sourceTree = ""; - }; - DE4121130D7F1B980080F80A /* PathSensitive */ = { - isa = PBXGroup; - children = ( - 35D55B290D81D8E50092E734 /* BasicValueFactory.h */, - 359378FF0DA486490043B19C /* BugReporter.h */, - 3536457C0E2406B0009C6509 /* Environment.h */, - DE4121200D7F1BBE0080F80A /* ExplodedGraph.h */, - 35F1ACE60E66166C001F4532 /* ConstraintManager.h */, - 35F8D0CB0D9B7E8200D91C5E /* GRAuditor.h */, - DE41211F0D7F1BBE0080F80A /* GRBlockCounter.h */, - DE4121230D7F1BBE0080F80A /* GRCoreEngine.h */, - DE4121210D7F1BBE0080F80A /* GRExprEngine.h */, - 358F514F0E529A87007F2102 /* GRState.h */, - 3553EB9A0E5F7089007D7359 /* GRStateTrait.h */, - 35F8D0CA0D9B7E8200D91C5E /* GRSimpleAPICheck.h */, - DE4121220D7F1BBE0080F80A /* GRTransferFuncs.h */, - DE41211D0D7F1BBE0080F80A /* GRWorkList.h */, - 355106880E9A851B006A4E44 /* MemRegion.h */, - 3558F76F0E267C9A00A5B0DF /* Store.h */, - 35A057D20EAE2D2B0069249F /* SVals.h */, - DE41211E0D7F1BBE0080F80A /* SymbolManager.h */, - ); - name = PathSensitive; - sourceTree = ""; - }; - DE67E7070C020EAB00F66BC5 /* Sema */ = { - isa = PBXGroup; - children = ( - BF9FEDFE1225E6DD003A8B71 /* TargetAttributesSema.cpp */, - BF9FEDFC1225E6C6003A8B71 /* DeclSpec.cpp */, - BF9FEDFA1225E6A9003A8B71 /* AttributeList.cpp */, - BF89C3E111595818001C2D68 /* AnalysisBasedWarnings.cpp */, - 1A6B6CD110693FC900BB4A8F /* CodeCompleteConsumer.cpp */, - 352712500DAFE54700C76352 /* IdentifierResolver.cpp */, - DECB6D640F9AE26600F5FBC7 /* JumpDiagnostics.cpp */, - DE67E7160C020EE400F66BC5 /* Sema.cpp */, - 1A701B630F7C8FE400FEC4D1 /* SemaAccess.cpp */, - DEB07AC70F4A427E00F5A2BE /* SemaAttr.cpp */, - DEF2F00F0C6CFED5000C4259 /* SemaChecking.cpp */, - BF89C3FA11595A37001C2D68 /* SemaCodeComplete.cpp */, - 35E194670ECB82FB00F21733 /* SemaCXXScopeSpec.cpp */, - DE67E7120C020ED900F66BC5 /* SemaDecl.cpp */, - DE22BCF10E14197E0094DC60 /* SemaDeclAttr.cpp */, - 35EF676F0DAD1D2C00B19414 /* SemaDeclCXX.cpp */, - DE704B250D0FBEBE009C7762 /* SemaDeclObjC.cpp */, - BF89C3FC11595A5D001C2D68 /* SemaExceptionSpec.cpp */, - DE67E7100C020ED400F66BC5 /* SemaExpr.cpp */, - DE47999B0D2EBE1A00706D2D /* SemaExprObjC.cpp */, - DE67E70E0C020ECF00F66BC5 /* SemaExprCXX.cpp */, - 3599299A0DE2425300A8A33E /* SemaInit.cpp */, - 357EA27C0F2526F300439B60 /* SemaLookup.cpp */, - 1A6B6CD210693FC900BB4A8F /* SemaCodeComplete.cpp */, - 35E194680ECB82FB00F21733 /* SemaCXXCast.cpp */, - BF89C3E81159594A001C2D68 /* SemaObjCProperty.cpp */, - 35585DBE0EAFBC4500D0A97A /* SemaOverload.cpp */, - DE67E70C0C020ECA00F66BC5 /* SemaStmt.cpp */, - 3591853E0EFB1088000039AF /* SemaTemplate.cpp */, - BDF87CF60FD746F300BBF872 /* SemaTemplateDeduction.cpp */, - 35544B8B0F5C803200D92AA9 /* SemaTemplateInstantiate.cpp */, - 1ADF47AE0F782C3200E48A8A /* SemaTemplateInstantiateDecl.cpp */, - BF89C3F811595A01001C2D68 /* SemaType.cpp */, - 1AE4EE3B103B89CA00888A23 /* TreeTransform.h */, - BF89C3E5115958A1001C2D68 /* TargetAttributesSema.h */, - ); - name = Sema; - sourceTree = ""; - }; - DE67E7260C02108300F66BC5 /* Sema */ = { - isa = PBXGroup; - children = ( - BF9FEE451225EA24003A8B71 /* DelayedDiagnostic.h */, - BF9FED781225E041003A8B71 /* SemaInternal.h */, - BF9FED771225E032003A8B71 /* ObjCMethodList.h */, - BF9FED731225E005003A8B71 /* Ownership.h */, - BF9FED741225E005003A8B71 /* ParsedTemplate.h */, - BF9FED751225E005003A8B71 /* Scope.h */, - BF9FED761225E005003A8B71 /* ScopeInfo.h */, - BF9FED711225DFD9003A8B71 /* DeclSpec.h */, - BF9FED721225DFD9003A8B71 /* Designator.h */, - BF9FED701225DFA1003A8B71 /* AttributeList.h */, - BF9FED6F1225DF7F003A8B71 /* Action.h */, - BF9FED6E1225DF55003A8B71 /* TemplateDeduction.h */, - BD59A948121496B9003A5A02 /* AnalysisBasedWarnings.h */, - BD59A949121496B9003A5A02 /* CodeCompleteConsumer.h */, - BD59A94A121496B9003A5A02 /* CXXFieldCollector.h */, - BD59A94B121496B9003A5A02 /* ExternalSemaSource.h */, - BD59A94C121496B9003A5A02 /* IdentifierResolver.h */, - BD59A94D121496B9003A5A02 /* Initialization.h */, - BD59A94E121496B9003A5A02 /* Lookup.h */, - BD59A94F121496B9003A5A02 /* Overload.h */, - BD59A951121496B9003A5A02 /* Sema.h */, - BD59A952121496B9003A5A02 /* SemaConsumer.h */, - BD59A953121496B9003A5A02 /* SemaDiagnostic.h */, - BD59A954121496B9003A5A02 /* Template.h */, - ); - name = Sema; - sourceTree = ""; - }; - DE927FCC0C0557CD00231DA4 /* CodeGen */ = { - isa = PBXGroup; - children = ( - BF9FEE361225E8CF003A8B71 /* README.txt */, - BF9FEE341225E8B1003A8B71 /* MicrosoftCXXABI.cpp */, - BF9FEE321225E898003A8B71 /* ItaniumCXXABI.cpp */, - BF9FEE301225E86C003A8B71 /* CodeGenAction.cpp */, - BF9FEE2F1225E854003A8B71 /* CGRecordLayout.h */, - BF9FEE2E1225E82D003A8B71 /* CGException.h */, - 1A3D2C4D12A2CD3D0088C44A /* CGCXXABI.cpp */, - BF9FEE2D1225E80F003A8B71 /* CGCXXABI.h */, - BF9FEE2B1225E7EA003A8B71 /* BackendUtil.cpp */, - 1A2193CB0F45EEB700C0713D /* ABIInfo.h */, - 1A471AB40F437BC500753CE8 /* CGBlocks.cpp */, - 1A649E1D0F9599D9005B965E /* CGBlocks.h */, - DE8822350EC80C0A00CBC30A /* CGBuilder.h */, - 1ABC36930C7A4BDC006DB0AB /* CGBuiltin.cpp */, - 35475B1F0E79973F0000BFE4 /* CGCall.cpp */, - 35475B220E7997680000BFE4 /* CGCall.h */, - 1A4C41BE105B4C0B0047B5E7 /* CGClass.cpp */, - 1A5D5E570E5E81010023C059 /* CGCXX.cpp */, - 1A649E1E0F9599DA005B965E /* CGCXX.h */, - 35A3E7000DD3874400757F74 /* CGDebugInfo.cpp */, - 35A3E7010DD3874400757F74 /* CGDebugInfo.h */, - DE4264FB0C113592005A861D /* CGDecl.cpp */, - 1A986AB610D0746D00A8EA9E /* CGDeclCXX.cpp */, - 1AF1B50E109A4FB800AFAFAC /* CGException.cpp */, - DE4772FB0C10EAEC002239E8 /* CGExpr.cpp */, - DEF2EFF20C6CDD74000C4259 /* CGExprAgg.cpp */, - 1A6B6E991069833600BB4A8F /* CGExprCXX.cpp */, - DE224FF70C7AA98800D370A5 /* CGExprComplex.cpp */, - 1A376A2C0D4AED9B002A1C52 /* CGExprConstant.cpp */, - DE22526F0C7E82D000D370A5 /* CGExprScalar.cpp */, - 1A7342470C7B57D500122F56 /* CGObjC.cpp */, - DE38CD4E0D794CF900A273B6 /* CGObjCRuntime.h */, - DE38CD4F0D794D0100A273B6 /* CGObjCGNU.cpp */, - 3552E7580E520DD7003A8CA5 /* CGObjCMac.cpp */, - 1AFF8AE11012BFC900D248DA /* CGRecordLayoutBuilder.cpp */, - 1A6C01F6108128710072DEE4 /* CGRTTI.cpp */, - DE4772F90C10EAE5002239E8 /* CGStmt.cpp */, - 1A6FE7080FD6F85800E00CA9 /* CGTemporaries.cpp */, - 35475B230E7997680000BFE4 /* CGValue.h */, - 1A81AA18108144F40094E50B /* CGVTables.cpp */, - 1A81AA5D108278A20094E50B /* CGVTables.h */, - 1A97825A1108BA18002B98FC /* CGVTT.cpp */, - DE928B800C0A615B00231DA4 /* CodeGenFunction.h */, - DE928B820C0A616000231DA4 /* CodeGenFunction.cpp */, - DE928B7C0C0A615100231DA4 /* CodeGenModule.h */, - DE928B7E0C0A615600231DA4 /* CodeGenModule.cpp */, - DEEBC3BB0C2363BC00A9FE82 /* CodeGenTypes.cpp */, - DEEBC3B90C2363B800A9FE82 /* CodeGenTypes.h */, - 1A31B27210ACE6DA009E0C8B /* GlobalDecl.h */, - 1A2193CC0F45EEB700C0713D /* Mangle.cpp */, - 1A2193CD0F45EEB700C0713D /* Mangle.h */, - DE928B120C05659200231DA4 /* ModuleBuilder.cpp */, - 1A621BB5110FE6AA009E6834 /* TargetInfo.cpp */, - 1A621BB6110FE6AA009E6834 /* TargetInfo.h */, - ); - name = CodeGen; - sourceTree = ""; - }; - DE928B140C05659A00231DA4 /* CodeGen */ = { - isa = PBXGroup; - children = ( - BF9FEDB81225E2DE003A8B71 /* BackendUtil.h */, - BF9FEDB91225E2DE003A8B71 /* CodeGenAction.h */, - DE928B1F0C0565B000231DA4 /* ModuleBuilder.h */, - ); - name = CodeGen; - sourceTree = ""; - }; - DEC8D98B0A9433BC00353FCA /* AST */ = { - isa = PBXGroup; - children = ( - BF9FEDB71225E26A003A8B71 /* RecursiveASTVisitor.h */, - BF9FEDB61225E252003A8B71 /* OperationKinds.h */, - 1A15C407118226980092260D /* ASTImporter.h */, - 1A15C408118226980092260D /* ASTVector.h */, - 1A15C409118226980092260D /* CharUnits.h */, - 1A15C40A118226980092260D /* DeclAccessPair.h */, - 1A15C40B118226980092260D /* DeclFriend.h */, - 1A15C40C118226980092260D /* DependentDiagnostic.h */, - 1A15C40D118226980092260D /* TemplateBase.h */, - 1A15C40E118226980092260D /* UnresolvedSet.h */, - 1A15C40F118226980092260D /* UsuallyTinyPtrVector.h */, - 904753791096376F00CBDDDD /* CXXInheritance.h */, - 9047537A1096376F00CBDDDD /* Redeclarable.h */, - 9047537B1096376F00CBDDDD /* TypeLoc.h */, - 9047537C1096376F00CBDDDD /* TypeLocBuilder.h */, - 9047537D1096376F00CBDDDD /* TypeLocNodes.def */, - 9047537E1096376F00CBDDDD /* TypeLocVisitor.h */, - 9047537F1096376F00CBDDDD /* TypeVisitor.h */, - DE613EF30E0E148D00B05B79 /* APValue.h */, - DEC8D9A30A94346E00353FCA /* AST.h */, - 35BFBD2B0C9EDE1E006CB644 /* ASTConsumer.h */, - DE75ED280B044DC90020CF81 /* ASTContext.h */, - DEA09A6E0F31756F000C2258 /* ASTDiagnostic.h */, - 1A72BEAC0D641E9400B085E9 /* Attr.h */, - 1A535EDB107BC47B000C3AE7 /* CanonicalType.h */, - 90FB99DE0F98FB1D008F9415 /* DeclContextInternals.h */, - 90FB99DF0F98FB1D008F9415 /* DeclVisitor.h */, - 90FB99E00F98FB1D008F9415 /* ExternalASTSource.h */, - DEC8D9900A9433CD00353FCA /* Decl.h */, - 3538FDB60ED24A2C005EC283 /* DeclarationName.h */, - 035611470DA6A45C00D2EF2A /* DeclBase.h */, - 84AF36A00CB17A3B00C820A5 /* DeclObjC.h */, - 35EE48AD0E0C4CB200715C54 /* DeclCXX.h */, - 358D23090E8BEB850003DDCC /* DeclGroup.h */, - DEB076C90F3A221200F5A2BE /* DeclTemplate.h */, - DE0FCA620A95859D00248FD5 /* Expr.h */, - 1A30A9E80B93A4C800201A91 /* ExprCXX.h */, - 35CEA05A0DF9E82700A41296 /* ExprObjC.h */, - 1AA963AB10D8576800786C86 /* FullExpr.h */, - DEDFE5CB0F7206CC0035BD10 /* NestedNameSpecifier.h */, - 35EE48AE0E0C4CB200715C54 /* ParentMap.h */, - 3547129D0C88881300B3E1D5 /* PrettyPrinter.h */, - DE6951C60C4D1F5D00A5826B /* RecordLayout.h */, - DE3452800AEF1B1800DBC861 /* Stmt.h */, - DECB73550FA3EE5A00F5FBC7 /* StmtCXX.h */, - DECB734E0FA3ED8400F5FBC7 /* StmtObjC.h */, - DE345C190AFC658B00DBC861 /* StmtVisitor.h */, - 35847BE30CC7DB9000C40FFF /* StmtIterator.h */, - 35CFFE010CA1CBDD00E6F2BE /* StmtGraphTraits.h */, - DEDFF87F0F848CE30035BD10 /* TemplateName.h */, - DEF16BE40FA13A5B0098507F /* TypeNodes.def */, - DEF16BE50FA13A650098507F /* TypeOrdering.h */, - DE3464210B03040900DBC861 /* Type.h */, - ); - name = AST; - sourceTree = ""; - }; - DEC8D9920A9433F400353FCA /* AST */ = { - isa = PBXGroup; - children = ( - BD6B0EDE13A1824C00B8E3FE /* Mangle.cpp */, - BD6B0EE313A182DA00B8E3FE /* MicrosoftMangle.cpp */, - BD6B0EE113A182A600B8E3FE /* ItaniumMangle.cpp */, - BF9FEE051225E770003A8B71 /* MicrosoftCXXABI.cpp */, - BF9FEE031225E759003A8B71 /* ItaniumCXXABI.cpp */, - BF9FEE011225E73F003A8B71 /* ExprClassification.cpp */, - BF9FEE001225E718003A8B71 /* CXXABI.h */, - 1ABD23B11182449800A48E65 /* APValue.cpp */, - 1ABD23B21182449800A48E65 /* ASTConsumer.cpp */, - 1ABD23B31182449800A48E65 /* ASTContext.cpp */, - 1ABD23B41182449800A48E65 /* ASTDiagnostic.cpp */, - 1ABD23B51182449800A48E65 /* ASTImporter.cpp */, - 1ABD23B61182449800A48E65 /* AttrImpl.cpp */, - 1ABD23B71182449800A48E65 /* CXXInheritance.cpp */, - 1ABD23B81182449800A48E65 /* Decl.cpp */, - 1ABD23B91182449800A48E65 /* DeclarationName.cpp */, - 1ABD23BA1182449800A48E65 /* DeclBase.cpp */, - 1ABD23BB1182449800A48E65 /* DeclCXX.cpp */, - 1ABD23BC1182449800A48E65 /* DeclFriend.cpp */, - 1ABD23BD1182449800A48E65 /* DeclGroup.cpp */, - 1ABD23BE1182449800A48E65 /* DeclObjC.cpp */, - 1ABD23BF1182449800A48E65 /* DeclPrinter.cpp */, - 1ABD23C01182449800A48E65 /* DeclTemplate.cpp */, - BB5C372812A5057500259F53 /* DumpXML.cpp */, - 1ABD23C11182449800A48E65 /* Expr.cpp */, - 1ABD23C21182449800A48E65 /* ExprConstant.cpp */, - 1ABD23C31182449800A48E65 /* ExprCXX.cpp */, - 1ABD23C41182449800A48E65 /* FullExpr.cpp */, - 1ABD23C51182449800A48E65 /* InheritViz.cpp */, - 1ABD23C61182449800A48E65 /* NestedNameSpecifier.cpp */, - 1ABD23C71182449800A48E65 /* ParentMap.cpp */, - 1ABD23C81182449800A48E65 /* RecordLayout.cpp */, - 1ABD23C91182449800A48E65 /* RecordLayoutBuilder.cpp */, - 1ABD23CB1182449800A48E65 /* Stmt.cpp */, - 1ABD23CC1182449800A48E65 /* StmtDumper.cpp */, - 1ABD23CD1182449800A48E65 /* StmtIterator.cpp */, - 1ABD23CE1182449800A48E65 /* StmtPrinter.cpp */, - 1ABD23CF1182449800A48E65 /* StmtProfile.cpp */, - 1ABD23D01182449800A48E65 /* StmtViz.cpp */, - 1ABD23D11182449800A48E65 /* TemplateBase.cpp */, - 1ABD23D21182449800A48E65 /* TemplateName.cpp */, - 1ABD23D31182449800A48E65 /* Type.cpp */, - 1ABD23D41182449800A48E65 /* TypeLoc.cpp */, - 1ABD23D51182449800A48E65 /* TypePrinter.cpp */, - ); - name = AST; - path = lib/AST; - sourceTree = ""; - }; - DED7D72E0A524295003AD0FB /* include */ = { - isa = PBXGroup; - children = ( - BB206040131EDDDA003C3343 /* ARRMigrate */, - DED7D7300A524295003AD0FB /* Basic */, - DED7D7390A524295003AD0FB /* Lex */, - DE1F21F20A7D84E800FBF588 /* Parse */, - DEC8D98B0A9433BC00353FCA /* AST */, - DE67E7260C02108300F66BC5 /* Sema */, - DE928B140C05659A00231DA4 /* CodeGen */, - 356EF9AF0C8F7DA4006650F5 /* Analysis */, - 57EB5654121B023900ECA335 /* Serialization */, - 90FD6D5E103C3D03005F5B73 /* Index */, - DEF7D9F40C9C8B020001F598 /* Rewrite */, - DEF1615D0F65C7FC0098507F /* Frontend */, - DEF165020F8D46810098507F /* Driver */, - 9012911210470FAF0083456D /* clang-c */, - ); - path = include; - sourceTree = ""; - }; - DED7D7300A524295003AD0FB /* Basic */ = { - isa = PBXGroup; - children = ( - BF9FEDF71225E613003A8B71 /* DiagnosticCategories.td */, - BF9FEDF61225E5FB003A8B71 /* Version.inc.in */, - BF9FEDF41225E5D5003A8B71 /* Linkage.h */, - BF9FEDF51225E5D5003A8B71 /* MacroBuilder.h */, - BF9FEDF31225E5B6003A8B71 /* DeclNodes.td */, - BF9FEDF21225E58B003A8B71 /* TargetOptions.h */, - BF9FEDF01225E574003A8B71 /* Specifiers.h */, - BF9FEDF11225E574003A8B71 /* StmtNodes.td */, - BF9FEDEF1225E55C003A8B71 /* BuiltinsARM.def */, - BF9FEDED1225E52F003A8B71 /* arm_neon.td */, - BF9FEDEE1225E52F003A8B71 /* Attr.td */, - BF9FEDEC1225E514003A8B71 /* Version.h */, - BF9FEDEB1225E4F2003A8B71 /* AttrKinds.h */, - DE37251C0FE4818000CF2CC2 /* Builtins.h */, - DE37252A0FE4818F00CF2CC2 /* Builtins.def */, - DE3725330FE4827200CF2CC2 /* BuiltinsPPC.def */, - DE3725320FE4826C00CF2CC2 /* BuiltinsX86.def */, - 906BF4AE0F83BA16001071FA /* ConvertUTF.h */, - DED7D7310A524295003AD0FB /* Diagnostic.h */, - DEDFFF070F959EE60035BD10 /* Diagnostic.td */, - 1A7019E90F79BC1100FEC4D1 /* DiagnosticAnalysisKinds.td */, - 1A7019EA0F79BC1100FEC4D1 /* DiagnosticASTKinds.td */, - 1A7019EB0F79BC1100FEC4D1 /* DiagnosticCommonKinds.td */, - 1A7019EC0F79BC1100FEC4D1 /* DiagnosticDriverKinds.td */, - 1A7019ED0F79BC1100FEC4D1 /* DiagnosticFrontendKinds.td */, - DEDFFF530F9704580035BD10 /* DiagnosticGroups.td */, - 1A7019EE0F79BC1100FEC4D1 /* DiagnosticLexKinds.td */, - 1A7019EF0F79BC1100FEC4D1 /* DiagnosticParseKinds.td */, - 1A701A250F79CE1C00FEC4D1 /* DiagnosticSemaKinds.td */, - DED7D7330A524295003AD0FB /* FileManager.h */, - DE3986EF0CB8D4B300223765 /* IdentifierTable.h */, - DE06B73D0A8307640050E87E /* LangOptions.h */, - 9063F2280F9E911F002F7251 /* OnDiskHashTable.h */, - DE8824560ED1244600CBC30A /* OperatorKinds.def */, - DE8824530ED1243E00CBC30A /* OperatorKinds.h */, - 1AB290021045858B00FE33D8 /* PartialDiagnostic.h */, - DEAABDF70F5F477C0098928A /* PrettyStackTrace.h */, - DED7D7350A524295003AD0FB /* SourceLocation.h */, - DED7D7360A524295003AD0FB /* SourceManager.h */, - 9063F2290F9E911F002F7251 /* SourceManagerInternals.h */, - DE3725310FE4822800CF2CC2 /* TargetBuiltins.h */, - DE46BF270AE0A82D00CC047C /* TargetInfo.h */, - 9063F22A0F9E911F002F7251 /* TemplateKinds.h */, - DED7D7380A524295003AD0FB /* TokenKinds.h */, - DED7D7370A524295003AD0FB /* TokenKinds.def */, - DEB089EE0F12F1D900522C07 /* TypeTraits.h */, - ); - name = Basic; - path = clang/Basic; - sourceTree = ""; - }; - DED7D7390A524295003AD0FB /* Lex */ = { - isa = PBXGroup; - children = ( - BF9FEDB41225E1F3003A8B71 /* PreprocessingRecord.h */, - BF9FEDB31225E1E1003A8B71 /* ExternalPreprocessorSource.h */, - BF9FEDB21225E1D2003A8B71 /* CodeCompletionHandler.h */, - DE3450D60AEB543100DBC861 /* DirectoryLookup.h */, - DE704BD10D1647E7009C7762 /* HeaderMap.h */, - DE344AB70AE5DF6D00DBC861 /* HeaderSearch.h */, - DEA09A830F3175BF000C2258 /* LexDiagnostic.h */, - DED7D73B0A524295003AD0FB /* Lexer.h */, - 1A869A6E0BA2164C008DA07A /* LiteralSupport.h */, - DED7D73E0A524295003AD0FB /* MacroInfo.h */, - DEAEE98A0A5A2B970045101B /* MultipleIncludeOpt.h */, - DE01DA480B12ADA300AC22CE /* PPCallbacks.h */, - DE8823DE0ED0B78600CBC30A /* PTHLexer.h */, - 3598EBEB0EDE23EF0070CA16 /* PTHManager.h */, - DED7D73F0A524295003AD0FB /* Pragma.h */, - DED7D7400A524295003AD0FB /* Preprocessor.h */, - 35B820740ECB811A0020BEC0 /* PreprocessorLexer.h */, - DED7D9170A52518C003AD0FB /* ScratchBuffer.h */, - DE6954630C5121BD00A5826B /* Token.h */, - DEB077930F44F96000F5A2BE /* TokenConcatenation.h */, - DE85CD840D8380F20070E26E /* TokenLexer.h */, - ); - name = Lex; - path = clang/Lex; - sourceTree = ""; - }; - DED7D7500A5242C7003AD0FB /* Basic */ = { - isa = PBXGroup; - children = ( - DE37252D0FE481AD00CF2CC2 /* Builtins.cpp */, - 906BF4AF0F83BA2E001071FA /* ConvertUTF.c */, - DED7D75D0A5242C7003AD0FB /* Diagnostic.cpp */, - DED7D75E0A5242C7003AD0FB /* FileManager.cpp */, - DE3986F30CB8D50C00223765 /* IdentifierTable.cpp */, - 35707EFD0CD0F5CC000B2204 /* SourceLocation.cpp */, - DED7D76D0A5242C7003AD0FB /* SourceManager.cpp */, - DED626C80AE0C065001E80A4 /* TargetInfo.cpp */, - 03F50AC50D416EAA00B9CF60 /* Targets.cpp */, - DED7D76E0A5242C7003AD0FB /* TokenKinds.cpp */, - ); - name = Basic; - path = lib/Basic; - sourceTree = ""; - }; - DED7D78C0A5242E6003AD0FB /* Lex */ = { - isa = PBXGroup; - children = ( - BF9FEEF1122D8068003A8B71 /* PreprocessingRecord.cpp */, - DE704DD10D1668A4009C7762 /* HeaderMap.cpp */, - DE344B530AE5E46C00DBC861 /* HeaderSearch.cpp */, - DED7D79E0A5242E6003AD0FB /* Lexer.cpp */, - 1A869AA70BA21ABA008DA07A /* LiteralSupport.cpp */, - DE85CD9E0D8382DD0070E26E /* MacroArgs.h */, - DE85CDA20D8383B20070E26E /* MacroArgs.cpp */, - DED7D7A00A5242E6003AD0FB /* MacroInfo.cpp */, - 3552E7540E520D80003A8CA5 /* PPCaching.cpp */, - DE85CDAF0D838C390070E26E /* PPDirectives.cpp */, - DED7D7A20A5242E6003AD0FB /* PPExpressions.cpp */, - DE85CDB50D839BAE0070E26E /* PPLexerChange.cpp */, - DE85CDAB0D838C120070E26E /* PPMacroExpansion.cpp */, - DED7D7A30A5242E6003AD0FB /* Pragma.cpp */, - DED7D7A40A5242E6003AD0FB /* Preprocessor.cpp */, - 3537AA0D0ECD08A4008F7CDC /* PreprocessorLexer.cpp */, - 35E1946C0ECB83C100F21733 /* PTHLexer.cpp */, - DED7D9E40A5257F6003AD0FB /* ScratchBuffer.cpp */, - DEB077980F44F97800F5A2BE /* TokenConcatenation.cpp */, - DE85CD800D8380B10070E26E /* TokenLexer.cpp */, - ); - name = Lex; - path = lib/Lex; - sourceTree = ""; - }; - DEDFE61F0F7B3AE10035BD10 /* Tools */ = { - isa = PBXGroup; - children = ( - BB206042131EDE03003C3343 /* arrmt-test */, - 90F9EFA8104ABDC400D09A15 /* c-index-test */, - 9012911E104812DA0083456D /* CIndex */, - 90FD6DB4103D9763005F5B73 /* index-test */, - DEDFE6210F7B3AF10035BD10 /* clang */, - ); - name = Tools; - sourceTree = ""; - }; - DEDFE6210F7B3AF10035BD10 /* clang */ = { - isa = PBXGroup; - children = ( - E16B523410D30B2400430AC9 /* cc1_main.cpp */, - DEDFE6450F7B3B4E0035BD10 /* driver.cpp */, - ); - name = clang; - sourceTree = ""; - }; - DEDFE6470F7B3B560035BD10 /* Driver */ = { - isa = PBXGroup; - children = ( - DEDFE6480F7B3B830035BD10 /* Types.cpp */, - DEDFE6490F7B3B830035BD10 /* Tools.h */, - DEDFE64A0F7B3B830035BD10 /* Tools.cpp */, - DEDFE64B0F7B3B830035BD10 /* ToolChains.h */, - DEDFE64C0F7B3B830035BD10 /* Compilation.cpp */, - DEDFE64D0F7B3B830035BD10 /* ArgList.cpp */, - DEDFE64E0F7B3B830035BD10 /* Arg.cpp */, - DEDFE64F0F7B3B830035BD10 /* Action.cpp */, - DEDFE6500F7B3B830035BD10 /* Phases.cpp */, - DEDFE6510F7B3B830035BD10 /* OptTable.cpp */, - DEDFE6520F7B3B830035BD10 /* Option.cpp */, - DEDFE6530F7B3B830035BD10 /* Job.cpp */, - DEDFE6540F7B3B830035BD10 /* InputInfo.h */, - DEDFE6550F7B3B830035BD10 /* ToolChains.cpp */, - DEDFE6560F7B3B830035BD10 /* ToolChain.cpp */, - DEDFE6570F7B3B830035BD10 /* Tool.cpp */, - DEDFE6580F7B3B830035BD10 /* HostInfo.cpp */, - DEDFE6590F7B3B830035BD10 /* Driver.cpp */, - ); - name = Driver; - sourceTree = ""; - }; - DEF1615D0F65C7FC0098507F /* Frontend */ = { - isa = PBXGroup; - children = ( - BF9FEDCE1225E42C003A8B71 /* VerifyDiagnosticsClient.h */, - BF9FEDCC1225E41D003A8B71 /* PreprocessorOptions.h */, - BF9FEDCD1225E41D003A8B71 /* PreprocessorOutputOptions.h */, - BF9FEDC81225E40A003A8B71 /* FrontendOptions.h */, - BF9FEDC91225E40A003A8B71 /* FrontendPluginRegistry.h */, - BF9FEDCA1225E40A003A8B71 /* HeaderSearchOptions.h */, - BF9FEDCB1225E40A003A8B71 /* LangStandard.h */, - BF9FEDC61225E3F6003A8B71 /* FrontendAction.h */, - BF9FEDC71225E3F6003A8B71 /* FrontendActions.h */, - BF9FEDC41225E3DA003A8B71 /* DependencyOutputOptions.h */, - BF9FEDC51225E3DA003A8B71 /* DiagnosticOptions.h */, - BF9FEDC21225E3C2003A8B71 /* CompilerInstance.h */, - BF9FEDC31225E3C2003A8B71 /* CompilerInvocation.h */, - BF9FEDC01225E3AB003A8B71 /* ChainedDiagnosticClient.h */, - BF9FEDC11225E3AB003A8B71 /* CodeGenOptions.h */, - BF9FEDBF1225E392003A8B71 /* AnalyzerOptions.h */, - 90FD6D86103C3D80005F5B73 /* Analyses.def */, - 90FD6D88103C3D80005F5B73 /* ASTConsumers.h */, - 90FD6D89103C3D80005F5B73 /* ASTUnit.h */, - 90FD6D8A103C3D80005F5B73 /* CommandLineSourceLoc.h */, - 90FD6D8B103C3D80005F5B73 /* DeclContextXML.def */, - 90FD6D8C103C3D80005F5B73 /* DeclXML.def */, - 90FD6D8D103C3D80005F5B73 /* DocumentXML.def */, - BF9FEDCF1225E443003A8B71 /* LangStandards.def */, - 90FD6D8E103C3D80005F5B73 /* DocumentXML.h */, - 90FD6D8F103C3D80005F5B73 /* StmtXML.def */, - 90FD6D90103C3D80005F5B73 /* TypeXML.def */, - 90FD6D91103C3D80005F5B73 /* Utils.h */, - DEF169220F9645960098507F /* FrontendDiagnostic.h */, - DEF161600F65C81C0098507F /* TextDiagnosticBuffer.h */, - DEF161630F65C81C0098507F /* TextDiagnosticPrinter.h */, - ); - name = Frontend; - sourceTree = ""; - }; - DEF165020F8D46810098507F /* Driver */ = { - isa = PBXGroup; - children = ( - BF9FEDE91225E4BD003A8B71 /* OptSpecifier.h */, - BF9FEDEA1225E4BD003A8B71 /* OptTable.h */, - BF9FEDE81225E49D003A8B71 /* CC1Options.h */, - BF9FEDE71225E488003A8B71 /* CC1AsOptions.h */, - DEF165160F8D46980098507F /* Action.h */, - DEF1651D0F8D46980098507F /* ArgList.h */, - DEF1651E0F8D46980098507F /* Arg.h */, - 1AA1D35611BECFF70089CC3F /* CC1AsOptions.td */, - 1AA1D35711BECFF70089CC3F /* CC1Options.td */, - DEF165170F8D46980098507F /* Compilation.h */, - DEF165240F8D46980098507F /* DriverDiagnostic.h */, - DEF165200F8D46980098507F /* Driver.h */, - DEF1651F0F8D46980098507F /* HostInfo.h */, - DEF165210F8D46980098507F /* Job.h */, - DEF165190F8D46980098507F /* Option.h */, - 1AA1D35811BECFF70089CC3F /* Options.td */, - DEF1651C0F8D46980098507F /* Options.h */, - 1AA1D35911BECFF70089CC3F /* OptParser.td */, - DEF165230F8D46980098507F /* Phases.h */, - DEF165140F8D46980098507F /* Tool.h */, - DEF165150F8D46980098507F /* Types.h */, - DEF1651A0F8D46980098507F /* Types.def */, - DEF1651B0F8D46980098507F /* ToolChain.h */, - DEF165220F8D46980098507F /* Util.h */, - ); - name = Driver; - sourceTree = ""; - }; - DEF7D9F40C9C8B020001F598 /* Rewrite */ = { - isa = PBXGroup; - children = ( - BF9FEDBE1225E373003A8B71 /* ASTConsumers.h */, - BF9FEDBD1225E35F003A8B71 /* Rewriters.h */, - BF9FEDBB1225E34B003A8B71 /* FixItRewriter.h */, - BF9FEDBC1225E34B003A8B71 /* FrontendActions.h */, - DEFFECA30DB093D100B4E7C3 /* DeltaTree.h */, - 35F2BE7B0DAC2963006E7668 /* HTMLRewrite.h */, - DEF7D9F60C9C8B1A0001F598 /* Rewriter.h */, - DE53370B0CE2D96F00D9A028 /* RewriteRope.h */, - DE4DC7980EA1BE4400069E5A /* TokenRewriter.h */, - ); - name = Rewrite; - sourceTree = ""; - }; - DEF7D9F50C9C8B0C0001F598 /* Rewrite */ = { - isa = PBXGroup; - children = ( - DEFFECA60DB1546600B4E7C3 /* DeltaTree.cpp */, - 72D16C1E0D9975C400E6DA4A /* HTMLRewrite.cpp */, - DEF7D9F80C9C8B1D0001F598 /* Rewriter.cpp */, - DECAB0CF0DB3C84200E13CCB /* RewriteRope.cpp */, - ); - name = Rewrite; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 8DD76F620486A84900D96B5E /* clang */ = { - isa = PBXNativeTarget; - buildConfigurationList = 1DEB923108733DC60010E9CD /* Build configuration list for PBXNativeTarget "clang" */; - buildPhases = ( - 8DD76F640486A84900D96B5E /* Sources */, - 8DD76F660486A84900D96B5E /* Frameworks */, - 8DD76F690486A84900D96B5E /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = clang; - productInstallPath = "$(HOME)/bin"; - productName = clang; - productReference = 8DD76F6C0486A84900D96B5E /* clang */; - productType = "com.apple.product-type.tool"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 08FB7793FE84155DC02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 1DEB923508733DC60010E9CD /* Build configuration list for PBXProject "clang" */; - compatibilityVersion = "Xcode 2.4"; - developmentRegion = English; - hasScannedForEncodings = 1; - knownRegions = ( - English, - Japanese, - French, - German, - ); - mainGroup = 08FB7794FE84155DC02AAC07 /* clang */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 8DD76F620486A84900D96B5E /* clang */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXSourcesBuildPhase section */ - 8DD76F640486A84900D96B5E /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BD6B0EDF13A1824C00B8E3FE /* Mangle.cpp in Sources */, - BD6B0EE213A182A600B8E3FE /* ItaniumMangle.cpp in Sources */, - BD6B0EE413A182DA00B8E3FE /* MicrosoftMangle.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 1DEB923208733DC60010E9CD /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - COPY_PHASE_STRIP = NO; - GCC_CW_ASM_SYNTAX = NO; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_CPP_EXCEPTIONS = NO; - GCC_ENABLE_CPP_RTTI = NO; - GCC_ENABLE_PASCAL_STRINGS = NO; - GCC_ENABLE_SYMBOL_SEPARATION = NO; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_INLINES_ARE_PRIVATE_EXTERN = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - __STDC_CONSTANT_MACROS, - "__STDC_LIMIT_MACROS=1", - ); - GCC_STRICT_ALIASING = YES; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_THREADSAFE_STATICS = NO; - GCC_USE_GCC3_PFE_SUPPORT = NO; - INSTALL_PATH = "$(HOME)/bin"; - OTHER_LDFLAGS = ( - "-lLLVMBitWriter", - "-lLLVMBitReader", - "-lLLVMAsmPrinter", - "-lLLVMSelectionDAG", - "-lLLVMCodeGen", - "-lLLVMipo", - "-lLLVMScalarOpts", - "-lLLVMTransformUtils", - "-lLLVMipa", - "-lLLVMAnalysis", - "-lLLVMTarget", - "-lLLVMCore", - "-lLLVMSupport", - "-lLLVMSystem", - ); - PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO; - PRODUCT_NAME = clang; - }; - name = Debug; - }; - 1DEB923308733DC60010E9CD /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - GCC_CW_ASM_SYNTAX = NO; - GCC_ENABLE_CPP_EXCEPTIONS = NO; - GCC_ENABLE_CPP_RTTI = NO; - GCC_ENABLE_PASCAL_STRINGS = NO; - GCC_ENABLE_SYMBOL_SEPARATION = NO; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_INLINES_ARE_PRIVATE_EXTERN = NO; - GCC_PREPROCESSOR_DEFINITIONS = ( - __STDC_CONSTANT_MACROS, - "__STDC_LIMIT_MACROS=1", - ); - GCC_STRICT_ALIASING = YES; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_THREADSAFE_STATICS = NO; - GCC_USE_GCC3_PFE_SUPPORT = NO; - INSTALL_PATH = "$(HOME)/bin"; - OTHER_LDFLAGS = ( - "-lLLVMBitWriter", - "-lLLVMBitReader", - "-lLLVMAsmPrinter", - "-lLLVMSelectionDAG", - "-lLLVMCodeGen", - "-lLLVMipo", - "-lLLVMScalarOpts", - "-lLLVMTransformUtils", - "-lLLVMipa", - "-lLLVMAnalysis", - "-lLLVMTarget", - "-lLLVMCore", - "-lLLVMSupport", - "-lLLVMSystem", - ); - PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO; - PRODUCT_NAME = clang; - }; - name = Release; - }; - 1DEB923608733DC60010E9CD /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - GCC_VERSION = ""; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = ( - ../../include, - include, - ); - LIBRARY_SEARCH_PATHS = ../../Debug/lib; - OTHER_LDFLAGS = ""; - PREBINDING = NO; - }; - name = Debug; - }; - 1DEB923708733DC60010E9CD /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = ( - ../../include, - include, - ); - LIBRARY_SEARCH_PATHS = ../../Release; - OTHER_LDFLAGS = ""; - PREBINDING = NO; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 1DEB923108733DC60010E9CD /* Build configuration list for PBXNativeTarget "clang" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1DEB923208733DC60010E9CD /* Debug */, - 1DEB923308733DC60010E9CD /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 1DEB923508733DC60010E9CD /* Build configuration list for PBXProject "clang" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1DEB923608733DC60010E9CD /* Debug */, - 1DEB923708733DC60010E9CD /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 08FB7793FE84155DC02AAC07 /* Project object */; -} diff --git a/docs/AutomaticReferenceCounting.html b/docs/AutomaticReferenceCounting.html index 5090fa2b7952..bc784578e4cf 100644 --- a/docs/AutomaticReferenceCounting.html +++ b/docs/AutomaticReferenceCounting.html @@ -1315,6 +1315,39 @@ and only if the value is not demonstrably already retained.

The complete optimization rules are quite complicated, but it would still be useful to document them here.

+
+

Precise lifetime semantics

+ +

In general, ARC maintains an invariant that a retainable object +pointer held in a __strong object will be retained for the +full formal lifetime of the object. Objects subject to this invariant +have precise lifetime semantics.

+ +

By default, local variables of automatic storage duration do not +have precise lifetime semantics. Such objects are simply strong +references which hold values of retainable object pointer type, and +these values are still fully subject to the optimizations on values +under local control.

+ +

Rationale: applying these precise-lifetime +semantics strictly would be prohibitive. Many useful optimizations +that might theoretically decrease the lifetime of an object would be +rendered impossible. Essentially, it promises too much.

+ +

A local variable of retainable object owner type and automatic +storage duration may be annotated with the objc_precise_lifetime +attribute to indicate that it should be considered to be an object +with precise lifetime semantics.

+ +

Rationale: nonetheless, it is sometimes +useful to be able to force an object to be released at a precise time, +even if that object does not appear to be used. This is likely to be +uncommon enough that the syntactic weight of explicitly requesting +these semantics will not be burdensome, and may even make the code +clearer.

+ +
+
@@ -1562,6 +1595,56 @@ from exceptions.

+
+

Interior pointers

+ +

An Objective-C method returning a non-retainable pointer may be +annotated with the objc_returns_inner_pointer attribute to +indicate that it returns a handle to the internal data of an object, +and that this reference will be invalidated if the object is +destroyed. When such a message is sent to an object, the object's +lifetime will be extended until at least the earliest of:

+ +
    +
  • the last use of the returned pointer, or any pointer derived from +it, in the calling function or
  • +
  • the autorelease pool is restored to a previous state.
  • +
+ +

Rationale: not all memory and resources are +managed with reference counts; it is common for objects to manage +private resources in their own, private way. Typically these +resources are completely encapsulated within the object, but some +classes offer their users direct access for efficiency. If ARC is not +aware of methods that return such interior pointers, its +optimizations can cause the owning object to be reclaimed too soon. +This attribute informs ARC that it must tread lightly.

+ +

The extension rules are somewhat intentionally vague. The +autorelease pool limit is there to permit a simple implementation to +simply retain and autorelease the receiver. The other limit permits +some amount of optimization. The phrase derived from is +intended to encompass the results both of pointer transformations, +such as casts and arithmetic, and of loading from such derived +pointers; furthermore, it applies whether or not such derivations are +applied directly in the calling code or by other utility code (for +example, the C library routine strchr). However, the +implementation never need account for uses after a return from the +code which calls the method returning an interior pointer.

+ +

As an exception, no extension is required if the receiver is loaded +directly from a __strong object +with precise lifetime semantics.

+ +

Rationale: implicit autoreleases carry the +risk of significantly inflating memory use, so it's important to +provide users a way of avoiding these autoreleases. Tying this to +precise lifetime semantics is ideal, as for local variables this +requires a very explicit annotation, which allows ARC to trust the +user with good cheer.

+ +
+
diff --git a/docs/InternalsManual.html b/docs/InternalsManual.html index 5d97609373b7..54f01fca0e7a 100644 --- a/docs/InternalsManual.html +++ b/docs/InternalsManual.html @@ -71,6 +71,7 @@ td {
  • Howto guides
  • @@ -1785,6 +1786,228 @@ Check for the attribute's presence using Decl::getAttr<YourAttr>().<

    Update the Clang Language Extensions document to describe your new attribute.

    + +

    How to add an expression or statement

    + + +

    Expressions and statements are one of the most fundamental constructs within a +compiler, because they interact with many different parts of the AST, +semantic analysis, and IR generation. Therefore, adding a new +expression or statement kind into Clang requires some care. The following list +details the various places in Clang where an expression or statement needs to be +introduced, along with patterns to follow to ensure that the new +expression or statement works well across all of the C languages. We +focus on expressions, but statements are similar.

    + +
      +
    1. Introduce parsing actions into the parser. Recursive-descent + parsing is mostly self-explanatory, but there are a few things that + are worth keeping in mind: +
        +
      • Keep as much source location information as possible! You'll + want it later to produce great diagnostics and support Clang's + various features that map between source code and the AST.
      • +
      • Write tests for all of the "bad" parsing cases, to make sure + your recovery is good. If you have matched delimiters (e.g., + parentheses, square brackets, etc.), use + Parser::BalancedDelimiterTracker to give nice diagnostics when + things go wrong.
      • +
      +
    2. + +
    3. Introduce semantic analysis actions into Sema. Semantic + analysis should always involve two functions: an ActOnXXX + function that will be called directly from the parser, and a + BuildXXX function that performs the actual semantic + analysis and will (eventually!) build the AST node. It's fairly + common for the ActOnCXX function to do very little (often + just some minor translation from the parser's representation to + Sema's representation of the same thing), but the separation + is still important: C++ template instantiation, for example, + should always call the BuildXXX variant. Several notes on + semantic analysis before we get into construction of the AST: +
        +
      • Your expression probably involves some types and some + subexpressions. Make sure to fully check that those types, and the + types of those subexpressions, meet your expectations. Add + implicit conversions where necessary to make sure that all of the + types line up exactly the way you want them. Write extensive tests + to check that you're getting good diagnostics for mistakes and + that you can use various forms of subexpressions with your + expression.
      • +
      • When type-checking a type or subexpression, make sure to first + check whether the type is "dependent" + (Type::isDependentType()) or whether a subexpression is + type-dependent (Expr::isTypeDependent()). If any of these + return true, then you're inside a template and you can't do much + type-checking now. That's normal, and your AST node (when you get + there) will have to deal with this case. At this point, you can + write tests that use your expression within templates, but don't + try to instantiate the templates.
      • +
      • For each subexpression, be sure to call + Sema::CheckPlaceholderExpr() to deal with "weird" + expressions that don't behave well as subexpressions. Then, + determine whether you need to perform + lvalue-to-rvalue conversions + (Sema::DefaultLvalueConversione) or + the usual unary conversions + (Sema::UsualUnaryConversions), for places where the + subexpression is producing a value you intend to use.
      • +
      • Your BuildXXX function will probably just return + ExprError() at this point, since you don't have an AST. + That's perfectly fine, and shouldn't impact your testing.
      • +
      +
    4. + +
    5. Introduce an AST node for your new expression. This starts with + declaring the node in include/Basic/StmtNodes.td and + creating a new class for your expression in the appropriate + include/AST/Expr*.h header. It's best to look at the class + for a similar expression to get ideas, and there are some specific + things to watch for: +
        +
      • If you need to allocate memory, use the ASTContext + allocator to allocate memory. Never use raw malloc or + new, and never hold any resources in an AST node, because + the destructor of an AST node is never called.
      • + +
      • Make sure that getSourceRange() covers the exact + source range of your expression. This is needed for diagnostics + and for IDE support.
      • + +
      • Make sure that children() visits all of the + subexpressions. This is important for a number of features (e.g., IDE + support, C++ variadic templates). If you have sub-types, you'll + also need to visit those sub-types in the + RecursiveASTVisitor.
      • + +
      • Add printing support (StmtPrinter.cpp) and dumping + support (StmtDumper.cpp) for your expression.
      • + +
      • Add profiling support (StmtProfile.cpp) for your AST + node, noting the distinguishing (non-source location) + characteristics of an instance of your expression. Omitting this + step will lead to hard-to-diagnose failures regarding matching of + template declarations.
      • +
      +
    6. + +
    7. Teach semantic analysis to build your AST node! At this point, + you can wire up your Sema::BuildXXX function to actually + create your AST. A few things to check at this point: +
        +
      • If your expression can construct a new C++ class or return a + new Objective-C object, be sure to update and then call + Sema::MaybeBindToTemporary for your just-created AST node + to be sure that the object gets properly destructed. An easy way + to test this is to return a C++ class with a private destructor: + semantic analysis should flag an error here with the attempt to + call the destructor.
      • +
      • Inspect the generated AST by printing it using clang -cc1 + -ast-print, to make sure you're capturing all of the + important information about how the AST was written.
      • +
      • Inspect the generated AST under clang -cc1 -ast-dump + to verify that all of the types in the generated AST line up the + way you want them. Remember that clients of the AST should never + have to "think" to understand what's going on. For example, all + implicit conversions should show up explicitly in the AST.
      • +
      • Write tests that use your expression as a subexpression of + other, well-known expressions. Can you call a function using your + expression as an argument? Can you use the ternary operator?
      • +
      +
    8. + +
    9. Teach code generation to create IR to your AST node. This step + is the first (and only) that requires knowledge of LLVM IR. There + are several things to keep in mind: +
        +
      • Code generation is separated into scalar/aggregate/complex and + lvalue/rvalue paths, depending on what kind of result your + expression produces. On occasion, this requires some careful + factoring of code to avoid duplication.
      • + +
      • CodeGenFunction contains functions + ConvertType and ConvertTypeForMem that convert + Clang's types (clang::Type* or clang::QualType) + to LLVM types. + Use the former for values, and the later for memory locations: + test with the C++ "bool" type to check this. If you find + that you are having to use LLVM bitcasts to make + the subexpressions of your expression have the type that your + expression expects, STOP! Go fix semantic analysis and the AST so + that you don't need these bitcasts.
      • + +
      • The CodeGenFunction class has a number of helper + functions to make certain operations easy, such as generating code + to produce an lvalue or an rvalue, or to initialize a memory + location with a given value. Prefer to use these functions rather + than directly writing loads and stores, because these functions + take care of some of the tricky details for you (e.g., for + exceptions).
      • + +
      • If your expression requires some special behavior in the event + of an exception, look at the push*Cleanup functions in + CodeGenFunction to introduce a cleanup. You shouldn't + have to deal with exception-handling directly.
      • + +
      • Testing is extremely important in IR generation. Use clang + -cc1 -emit-llvm and FileCheck to verify + that you're generating the right IR.
      • +
      +
    10. + +
    11. Teach template instantiation how to cope with your AST + node, which requires some fairly simple code: +
        +
      • Make sure that your expression's constructor properly + computes the flags for type dependence (i.e., the type your + expression produces can change from one instantiation to the + next), value dependence (i.e., the constant value your expression + produces can change from one instantiation to the next), + instantiation dependence (i.e., a template parameter occurs + anywhere in your expression), and whether your expression contains + a parameter pack (for variadic templates). Often, computing these + flags just means combining the results from the various types and + subexpressions.
      • + +
      • Add TransformXXX and RebuildXXX functions to + the + TreeTransform class template in Sema. + TransformXXX should (recursively) transform all of the + subexpressions and types + within your expression, using getDerived().TransformYYY. + If all of the subexpressions and types transform without error, it + will then call the RebuildXXX function, which will in + turn call getSema().BuildXXX to perform semantic analysis + and build your expression.
      • + +
      • To test template instantiation, take those tests you wrote to + make sure that you were type checking with type-dependent + expressions and dependent types (from step #2) and instantiate + those templates with various types, some of which type-check and + some that don't, and test the error messages in each case.
      • +
      +
    12. + +
    13. There are some "extras" that make other features work better. + It's worth handling these extras to give your expression complete + integration into Clang: +
        +
      • Add code completion support for your expression in + SemaCodeComplete.cpp.
      • + +
      • If your expression has types in it, or has any "interesting" + features other than subexpressions, extend libclang's + CursorVisitor to provide proper visitation for your + expression, enabling various IDE features such as syntax + highlighting, cross-referencing, and so on. The + c-index-test helper program can be used to test these + features.
      • +
      +
    14. +
    +
    diff --git a/docs/LanguageExtensions.html b/docs/LanguageExtensions.html index 7ee8f010a32b..c4a8047f1f48 100644 --- a/docs/LanguageExtensions.html +++ b/docs/LanguageExtensions.html @@ -4,7 +4,7 @@ - Clang LanguageExtensions + Clang Language Extensions