Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Apr 2017 16:31:21 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r317030 - in projects/clang500-import/contrib/llvm/tools/clang: include/clang-c include/clang/AST include/clang/ASTMatchers include/clang/ASTMatchers/Dynamic include/clang/Analysis incl...
Message-ID:  <201704161631.v3GGVLdD009112@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Sun Apr 16 16:31:20 2017
New Revision: 317030
URL: https://svnweb.freebsd.org/changeset/base/317030

Log:
  Merge clang trunk r300422 and resolve conflicts.

Added:
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ExternalASTMerger.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/AST/ExternalASTMerger.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ODRHash.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/AST/ODRHash.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/MemoryBufferCache.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/Basic/MemoryBufferCache.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/XRayLists.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/Basic/XRayLists.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/CodeGen/ConstantInitBuilder.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/CodeGen/ConstantInitBuilder.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/CodeGen/ConstantInitFuture.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/CodeGen/ConstantInitFuture.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/ClangOptionDocs.td
     - copied unchanged from r317029, vendor/clang/dist/include/clang/Driver/ClangOptionDocs.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/XRayArgs.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/Driver/XRayArgs.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Parse/RAIIObjectsForParser.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/Parse/RAIIObjectsForParser.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SimpleConstraintManager.h
     - copied unchanged from r317029, vendor/clang/dist/include/clang/StaticAnalyzer/Core/PathSensitive/SimpleConstraintManager.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/
     - copied from r317029, vendor/clang/dist/include/clang/Tooling/Refactoring/
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ExternalASTMerger.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/AST/ExternalASTMerger.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ODRHash.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/AST/ODRHash.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/MemoryBufferCache.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/Basic/MemoryBufferCache.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/XRayLists.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/Basic/XRayLists.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGGPUBuiltin.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/CodeGen/CGGPUBuiltin.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/ConstantInitBuilder.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/CodeGen/ConstantInitBuilder.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/CodeGen/MacroPPCallbacks.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.h
     - copied unchanged from r317029, vendor/clang/dist/lib/CodeGen/MacroPPCallbacks.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/Arch/
     - copied from r317029, vendor/clang/dist/lib/Driver/Arch/
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/
     - copied from r317029, vendor/clang/dist/lib/Driver/ToolChains/
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/XRayArgs.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/Driver/XRayArgs.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/NamespaceEndCommentsFixer.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/Format/NamespaceEndCommentsFixer.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/NamespaceEndCommentsFixer.h
     - copied unchanged from r317029, vendor/clang/dist/lib/Format/NamespaceEndCommentsFixer.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/clzerointrin.h
     - copied unchanged from r317029, vendor/clang/dist/lib/Headers/clzerointrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/CoroutineStmtBuilder.h
     - copied unchanged from r317029, vendor/clang/dist/lib/Sema/CoroutineStmtBuilder.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangedConstraintManager.h
     - copied unchanged from r317029, vendor/clang/dist/lib/StaticAnalyzer/Core/RangedConstraintManager.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp
     - copied unchanged from r317029, vendor/clang/dist/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Tooling/Refactoring/
     - copied from r317029, vendor/clang/dist/lib/Tooling/Refactoring/
  projects/clang500-import/contrib/llvm/tools/clang/utils/TableGen/ClangOptionDocEmitter.cpp
     - copied unchanged from r317029, vendor/clang/dist/utils/TableGen/ClangOptionDocEmitter.cpp
Deleted:
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCUDABuiltin.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/ConstantBuilder.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/CrossWindowsToolChain.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/MSVCToolChain.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/MinGWToolChain.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/ToolChains.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/ToolChains.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/Tools.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/Tools.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/Comments.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/Comments.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/RAIIObjectsForParser.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleConstraintManager.h
Modified:
  projects/clang500-import/contrib/llvm/tools/clang/include/clang-c/Index.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ASTVector.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/BuiltinTypes.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Decl.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclContextInternals.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclObjC.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclTemplate.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclarationName.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Expr.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ExprCXX.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ExternalASTSource.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Stmt.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/StmtCXX.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/StmtIterator.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/StmtOpenMP.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/TemplateBase.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Type.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/TypeLoc.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/TypeNodes.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/TypeOrdering.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchers.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Analysis/CallGraph.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Analysis/CloneDetection.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/AddressSpaces.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Attr.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAMDGPU.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNVPTX.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsWebAssembly.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DeclNodes.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticASTKinds.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommonKinds.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticIDs.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerializationKinds.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/IdentifierTable.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Module.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/ObjCRuntime.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/OpenCLImageTypes.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/SourceLocation.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Specifiers.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/StmtNodes.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/TypeTraits.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/arm_neon.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/CodeGen/BackendUtil.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/CodeGen/CodeGenABITypes.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/CodeGen/CodeGenAction.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/CodeGen/ModuleBuilder.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/Driver.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/Job.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/Options.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/Options.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/SanitizerArgs.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/Tool.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/ToolChain.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Format/Format.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/ASTConsumers.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInstance.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/FrontendActions.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/FrontendOptions.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/LangStandard.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/LangStandards.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/PCHContainerOperations.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Index/IndexSymbol.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Index/IndexingAction.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Index/USRGeneration.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearchOptions.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Parse/Parser.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/AttributeList.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/DeclSpec.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/IdentifierResolver.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Initialization.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Lookup.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Overload.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Ownership.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/ScopeInfo.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Sema.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Template.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Serialization/ASTBitCodes.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Serialization/ASTDeserializationListener.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Serialization/ASTReader.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Serialization/ASTWriter.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Serialization/Module.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/Serialization/ModuleManager.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Analyses.def
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Checker.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ConstraintManager.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h
  projects/clang500-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ASTDumper.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ASTImporter.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Decl.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclObjC.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclPrinter.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclTemplate.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclarationName.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Expr.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ExprClassification.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ExternalASTSource.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ItaniumMangle.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Mangle.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/MicrosoftMangle.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/NSAPI.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/OpenMPClause.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Stmt.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/StmtCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/StmtOpenMP.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/StmtPrinter.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/TemplateBase.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Type.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/TypeLoc.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/AST/TypePrinter.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Registry.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Analysis/CFG.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Analysis/CallGraph.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Analysis/CloneDetection.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Analysis/OSLog.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Analysis/ReachableCode.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/Diagnostic.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/FileManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/IdentifierTable.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/LangOptions.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/Module.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/OpenMPKinds.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/SourceManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/TargetInfo.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/Version.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/ABIInfo.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGAtomic.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCUDANV.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCall.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCall.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGClass.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCoroutine.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDeclCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprComplex.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGObjCGNU.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGObjCMac.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/EHScopeStack.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/Driver.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/DriverOptions.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/Job.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/Multilib.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/ToolChain.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/BreakableToken.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/BreakableToken.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/Format.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/FormatToken.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/UnwrappedLineFormatter.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/UnwrappedLineFormatter.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/ASTConsumers.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/ASTUnit.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/CompilerInvocation.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/FrontendActions.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteMacros.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/altivec.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/avx2intrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/avx512bwintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/avx512fintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/avx512vldqintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/avx512vlintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/avxintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/emmintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/f16cintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/htmxlintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/intrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/mmintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/module.modulemap
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/opencl-c.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/pmmintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/prfchwintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/smmintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/stdarg.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/tgmath.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/x86intrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/xmmintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/xopintrin.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/CommentToXML.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexBody.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexDecl.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexSymbol.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexTypeSourceInfo.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexingAction.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexingContext.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexingContext.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Index/USRGeneration.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/HeaderSearch.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/Lexer.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/ModuleMap.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/PPCaching.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/PPMacroExpansion.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/Pragma.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseInit.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseObjc.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseOpenMP.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParsePragma.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/Parser.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/ScopeInfo.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/Sema.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaAttr.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaCUDA.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaCXXScopeSpec.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaChecking.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaCoroutine.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaDeclObjC.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaExceptionSpec.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaExprMember.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaExprObjC.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaInit.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaLambda.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaObjCProperty.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaOpenMP.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaPseudoObject.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaStmtAttr.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaTemplateVariadic.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTReaderDecl.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTReaderStmt.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTWriterDecl.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTWriterStmt.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/GeneratePCH.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/GlobalModuleIndex.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/Module.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ModuleManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CXXSelfAssignmentChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastToStructChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CloneChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IteratorPastEndChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCPropertyChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ConstraintManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/DynamicTypeMap.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Store.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Tooling/Refactoring.cpp
  projects/clang500-import/contrib/llvm/tools/clang/lib/Tooling/Tooling.cpp
  projects/clang500-import/contrib/llvm/tools/clang/tools/clang-format/ClangFormat.cpp
  projects/clang500-import/contrib/llvm/tools/clang/tools/driver/cc1as_main.cpp
  projects/clang500-import/contrib/llvm/tools/clang/tools/driver/driver.cpp
  projects/clang500-import/contrib/llvm/tools/clang/utils/TableGen/ClangAttrEmitter.cpp
  projects/clang500-import/contrib/llvm/tools/clang/utils/TableGen/TableGen.cpp
  projects/clang500-import/contrib/llvm/tools/clang/utils/TableGen/TableGenBackends.h
Directory Properties:
  projects/clang500-import/contrib/llvm/tools/clang/   (props changed)

Modified: projects/clang500-import/contrib/llvm/tools/clang/include/clang-c/Index.h
==============================================================================
--- projects/clang500-import/contrib/llvm/tools/clang/include/clang-c/Index.h	Sun Apr 16 16:25:46 2017	(r317029)
+++ projects/clang500-import/contrib/llvm/tools/clang/include/clang-c/Index.h	Sun Apr 16 16:31:20 2017	(r317030)
@@ -478,8 +478,8 @@ CINDEX_LINKAGE void clang_getExpansionLo
                                                unsigned *offset);
 
 /**
- * \brief Retrieve the file, line, column, and offset represented by
- * the given source location, as specified in a # line directive.
+ * \brief Retrieve the file, line and column represented by the given source
+ * location, as specified in a # line directive.
  *
  * Example: given the following source code in a file somefile.c
  *
@@ -3011,8 +3011,9 @@ enum CXTypeKind {
   CXType_ObjCClass = 28,
   CXType_ObjCSel = 29,
   CXType_Float128 = 30,
+  CXType_Half = 31,
   CXType_FirstBuiltin = CXType_Void,
-  CXType_LastBuiltin  = CXType_ObjCSel,
+  CXType_LastBuiltin  = CXType_Half,
 
   CXType_Complex = 100,
   CXType_Pointer = 101,
@@ -3436,6 +3437,16 @@ CINDEX_LINKAGE long long clang_getArrayS
 CINDEX_LINKAGE CXType clang_Type_getNamedType(CXType T);
 
 /**
+ * \brief Determine if a typedef is 'transparent' tag.
+ *
+ * A typedef is considered 'transparent' if it shares a name and spelling
+ * location with its underlying tag type, as is the case with the NS_ENUM macro.
+ *
+ * \returns non-zero if transparent and zero otherwise.
+ */
+CINDEX_LINKAGE unsigned clang_Type_isTransparentTagTypedef(CXType T);
+
+/**
  * \brief List the possible error codes for \c clang_Type_getSizeOf,
  *   \c clang_Type_getAlignOf, \c clang_Type_getOffsetOf and
  *   \c clang_Cursor_getOffsetOf.
@@ -4023,8 +4034,8 @@ CINDEX_LINKAGE unsigned clang_Cursor_get
 
 /**
  * \brief Given a cursor that represents an Objective-C method or property
- * declaration, return non-zero if the declaration was affected by "@optional".
- * Returns zero if the cursor is not such a declaration or it is "@required".
+ * declaration, return non-zero if the declaration was affected by "\@optional".
+ * Returns zero if the cursor is not such a declaration or it is "\@required".
  */
 CINDEX_LINKAGE unsigned clang_Cursor_isObjCOptional(CXCursor C);
 
@@ -4700,7 +4711,7 @@ enum CXCompletionChunkKind {
    */
   CXCompletionChunk_HorizontalSpace,
   /**
-   * Vertical space ('\n'), after which it is generally a good idea to
+   * Vertical space ('\\n'), after which it is generally a good idea to
    * perform indentation.
    */
   CXCompletionChunk_VerticalSpace

Modified: projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h
==============================================================================
--- projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h	Sun Apr 16 16:25:46 2017	(r317029)
+++ projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h	Sun Apr 16 16:31:20 2017	(r317030)
@@ -39,6 +39,7 @@
 #include "clang/Basic/SanitizerBlacklist.h"
 #include "clang/Basic/SourceLocation.h"
 #include "clang/Basic/Specifiers.h"
+#include "clang/Basic/XRayLists.h"
 #include "llvm/ADT/APSInt.h"
 #include "llvm/ADT/ArrayRef.h"
 #include "llvm/ADT/DenseMap.h"
@@ -66,6 +67,7 @@
 #include <memory>
 #include <new>
 #include <string>
+#include <type_traits>
 #include <utility>
 #include <vector>
 
@@ -167,18 +169,20 @@ class ASTContext : public RefCountedBase
   mutable llvm::FoldingSet<DependentUnaryTransformType>
     DependentUnaryTransformTypes;
   mutable llvm::FoldingSet<AutoType> AutoTypes;
+  mutable llvm::FoldingSet<DeducedTemplateSpecializationType>
+    DeducedTemplateSpecializationTypes;
   mutable llvm::FoldingSet<AtomicType> AtomicTypes;
   llvm::FoldingSet<AttributedType> AttributedTypes;
   mutable llvm::FoldingSet<PipeType> PipeTypes;
 
   mutable llvm::FoldingSet<QualifiedTemplateName> QualifiedTemplateNames;
   mutable llvm::FoldingSet<DependentTemplateName> DependentTemplateNames;
-  mutable llvm::FoldingSet<SubstTemplateTemplateParmStorage> 
+  mutable llvm::FoldingSet<SubstTemplateTemplateParmStorage>
     SubstTemplateTemplateParms;
   mutable llvm::ContextualFoldingSet<SubstTemplateTemplateParmPackStorage,
-                                     ASTContext&> 
+                                     ASTContext&>
     SubstTemplateTemplateParmPacks;
-  
+
   /// \brief The set of nested name specifiers.
   ///
   /// This set is managed by the NestedNameSpecifier class.
@@ -200,17 +204,17 @@ class ASTContext : public RefCountedBase
 
   /// \brief A cache mapping from CXXRecordDecls to key functions.
   llvm::DenseMap<const CXXRecordDecl*, LazyDeclPtr> KeyFunctions;
-  
+
   /// \brief Mapping from ObjCContainers to their ObjCImplementations.
   llvm::DenseMap<ObjCContainerDecl*, ObjCImplDecl*> ObjCImpls;
-  
+
   /// \brief Mapping from ObjCMethod to its duplicate declaration in the same
   /// interface.
   llvm::DenseMap<const ObjCMethodDecl*,const ObjCMethodDecl*> ObjCMethodRedecls;
 
   /// \brief Mapping from __block VarDecls to their copy initialization expr.
   llvm::DenseMap<const VarDecl*, Expr*> BlockVarCopyInits;
-    
+
   /// \brief Mapping from class scope functions specialization to their
   /// template patterns.
   llvm::DenseMap<const FunctionDecl*, FunctionDecl*>
@@ -226,21 +230,21 @@ class ASTContext : public RefCountedBase
   /// is used in canonical template names.
   class CanonicalTemplateTemplateParm : public llvm::FoldingSetNode {
     TemplateTemplateParmDecl *Parm;
-    
+
   public:
-    CanonicalTemplateTemplateParm(TemplateTemplateParmDecl *Parm) 
+    CanonicalTemplateTemplateParm(TemplateTemplateParmDecl *Parm)
       : Parm(Parm) { }
-    
+
     TemplateTemplateParmDecl *getParam() const { return Parm; }
-    
+
     void Profile(llvm::FoldingSetNodeID &ID) { Profile(ID, Parm); }
-    
-    static void Profile(llvm::FoldingSetNodeID &ID, 
+
+    static void Profile(llvm::FoldingSetNodeID &ID,
                         TemplateTemplateParmDecl *Parm);
   };
   mutable llvm::FoldingSet<CanonicalTemplateTemplateParm>
     CanonTemplateTemplateParms;
-  
+
   TemplateTemplateParmDecl *
     getCanonicalTemplateTemplateParmDecl(TemplateTemplateParmDecl *TTP) const;
 
@@ -259,7 +263,7 @@ class ASTContext : public RefCountedBase
 
   /// \brief The typedef for the predefined \c id type.
   mutable TypedefDecl *ObjCIdDecl;
-  
+
   /// \brief The typedef for the predefined \c SEL type.
   mutable TypedefDecl *ObjCSelDecl;
 
@@ -268,7 +272,7 @@ class ASTContext : public RefCountedBase
 
   /// \brief The typedef for the predefined \c Protocol class in Objective-C.
   mutable ObjCInterfaceDecl *ObjCProtocolClassDecl;
-  
+
   /// \brief The typedef for the predefined 'BOOL' type.
   mutable TypedefDecl *BOOLDecl;
 
@@ -298,12 +302,12 @@ class ASTContext : public RefCountedBase
   mutable TypedefDecl *CFConstantStringTypeDecl;
 
   mutable QualType ObjCSuperType;
-  
+
   QualType ObjCNSStringType;
 
   /// \brief The typedef declaration for the Objective-C "instancetype" type.
   TypedefDecl *ObjCInstanceTypeDecl;
-  
+
   /// \brief The type for the C FILE type.
   TypeDecl *FILEDecl;
 
@@ -451,11 +455,11 @@ private:
   /// \brief Mapping that stores parameterIndex values for ParmVarDecls when
   /// that value exceeds the bitfield size of ParmVarDeclBits.ParameterIndex.
   typedef llvm::DenseMap<const VarDecl *, unsigned> ParameterIndexTable;
-  ParameterIndexTable ParamIndices;  
-  
+  ParameterIndexTable ParamIndices;
+
   ImportDecl *FirstLocalImport;
   ImportDecl *LastLocalImport;
-  
+
   TranslationUnitDecl *TUDecl;
   mutable ExternCContextDecl *ExternCContext;
   mutable BuiltinTemplateDecl *MakeIntegerSeqDecl;
@@ -472,6 +476,10 @@ private:
   /// entities should not be instrumented.
   std::unique_ptr<SanitizerBlacklist> SanitizerBL;
 
+  /// \brief Function filtering mechanism to determine whether a given function
+  /// should be imbued with the XRay "always" or "never" attributes.
+  std::unique_ptr<XRayFunctionFilter> XRayFilter;
+
   /// \brief The allocator used to create AST objects.
   ///
   /// AST objects are never destructed; rather, all memory associated with the
@@ -488,7 +496,7 @@ private:
   /// \brief The logical -> physical address space map.
   const LangAS::Map *AddrSpaceMap;
 
-  /// \brief Address space map mangling must be used with language specific 
+  /// \brief Address space map mangling must be used with language specific
   /// address spaces (e.g. OpenCL/CUDA)
   bool AddrSpaceMapMangling;
 
@@ -500,7 +508,7 @@ private:
   const TargetInfo *Target;
   const TargetInfo *AuxTarget;
   clang::PrintingPolicy PrintingPolicy;
-  
+
 public:
   IdentifierTable &Idents;
   SelectorTable &Selectors;
@@ -604,7 +612,7 @@ public:
   void setPrintingPolicy(const clang::PrintingPolicy &Policy) {
     PrintingPolicy = Policy;
   }
-  
+
   SourceManager& getSourceManager() { return SourceMgr; }
   const SourceManager& getSourceManager() const { return SourceMgr; }
 
@@ -619,7 +627,7 @@ public:
     return static_cast<T *>(Allocate(Num * sizeof(T), alignof(T)));
   }
   void Deallocate(void *Ptr) const { }
-  
+
   /// Return the total amount of physical memory allocated for representing
   /// AST nodes and type information.
   size_t getASTAllocatedMemory() const {
@@ -627,7 +635,7 @@ public:
   }
   /// Return the total memory used for various side tables.
   size_t getSideTableAllocatedMemory() const;
-  
+
   PartialDiagnostic::StorageAllocator &getDiagAllocator() {
     return DiagAllocator;
   }
@@ -647,13 +655,17 @@ public:
   QualType getRealTypeForBitwidth(unsigned DestWidth) const;
 
   bool AtomicUsesUnsupportedLibcall(const AtomicExpr *E) const;
-  
+
   const LangOptions& getLangOpts() const { return LangOpts; }
 
   const SanitizerBlacklist &getSanitizerBlacklist() const {
     return *SanitizerBL;
   }
 
+  const XRayFunctionFilter &getXRayFilter() const {
+    return *XRayFilter;
+  }
+
   DiagnosticsEngine &getDiagnostics() const;
 
   FullSourceLoc getFullLoc(SourceLocation Loc) const {
@@ -862,7 +874,7 @@ public:
   FieldDecl *getInstantiatedFromUnnamedFieldDecl(FieldDecl *Field);
 
   void setInstantiatedFromUnnamedFieldDecl(FieldDecl *Inst, FieldDecl *Tmpl);
-  
+
   // Access to the set of methods overridden by the given C++ method.
   typedef CXXMethodVector::const_iterator overridden_cxx_method_iterator;
   overridden_cxx_method_iterator
@@ -878,7 +890,7 @@ public:
 
   /// \brief Note that the given C++ \p Method overrides the given \p
   /// Overridden method.
-  void addOverriddenMethod(const CXXMethodDecl *Method, 
+  void addOverriddenMethod(const CXXMethodDecl *Method,
                            const CXXMethodDecl *Overridden);
 
   /// \brief Return C++ or ObjC overridden methods for the given \p Method.
@@ -891,7 +903,7 @@ public:
   void getOverriddenMethods(
                         const NamedDecl *Method,
                         SmallVectorImpl<const NamedDecl *> &Overridden) const;
-  
+
   /// \brief Notify the AST context that a new import declaration has been
   /// parsed or implicitly created within this translation unit.
   void addedLocalImportDecl(ImportDecl *Import);
@@ -899,7 +911,7 @@ public:
   static ImportDecl *getNextLocalImport(ImportDecl *Import) {
     return Import->NextLocalImport;
   }
-  
+
   typedef llvm::iterator_range<import_iterator> import_range;
   import_range local_imports() const {
     return import_range(import_iterator(FirstLocalImport), import_iterator());
@@ -973,7 +985,7 @@ public:
   CanQualType SingletonId;
 #include "clang/Basic/OpenCLImageTypes.def"
   CanQualType OCLSamplerTy, OCLEventTy, OCLClkEventTy;
-  CanQualType OCLQueueTy, OCLNDRangeTy, OCLReserveIDTy;
+  CanQualType OCLQueueTy, OCLReserveIDTy;
   CanQualType OMPArraySectionTy;
 
   // Types for deductions in C++0x [stmt.ranged]'s desugaring. Built on demand.
@@ -1179,15 +1191,15 @@ public:
 
   /// Returns true iff we need copy/dispose helpers for the given type.
   bool BlockRequiresCopying(QualType Ty, const VarDecl *D);
-  
-  
+
+
   /// Returns true, if given type has a known lifetime. HasByrefExtendedLayout is set
   /// to false in this case. If HasByrefExtendedLayout returns true, byref variable
-  /// has extended lifetime. 
+  /// has extended lifetime.
   bool getByrefLifetime(QualType Ty,
                         Qualifiers::ObjCLifetime &Lifetime,
                         bool &HasByrefExtendedLayout) const;
-  
+
   /// \brief Return the uniqued reference to the type for an lvalue reference
   /// to the specified type.
   QualType getLValueReferenceType(QualType T, bool SpelledAsLValue = true)
@@ -1231,7 +1243,7 @@ public:
   QualType getConstantArrayType(QualType EltTy, const llvm::APInt &ArySize,
                                 ArrayType::ArraySizeModifier ASM,
                                 unsigned IndexTypeQuals) const;
-  
+
   /// \brief Returns a vla type where known sizes are replaced with [*].
   QualType getVariableArrayDecayedType(QualType Ty) const;
 
@@ -1355,6 +1367,8 @@ public:
       ElaboratedTypeKeyword Keyword, NestedNameSpecifier *NNS,
       const IdentifierInfo *Name, ArrayRef<TemplateArgument> Args) const;
 
+  TemplateArgument getInjectedTemplateArg(NamedDecl *ParamDecl);
+
   /// Get a template argument list with one argument per template parameter
   /// in a template parameter list, such as for the injected class name of
   /// a class template.
@@ -1380,7 +1394,7 @@ public:
   QualType getObjCTypeParamType(const ObjCTypeParamDecl *Decl,
                                 ArrayRef<ObjCProtocolDecl *> protocols,
                                 QualType Canonical = QualType()) const;
-  
+
   bool ObjCObjectAdoptsQTypeProtocols(QualType QT, ObjCInterfaceDecl *Decl);
   /// QIdProtocolsAdoptObjCObjectProtocols - Checks that protocols in
   /// QT's qualified-id protocol list adopt all protocols in IDecl's list
@@ -1412,6 +1426,11 @@ public:
   /// \brief C++11 deduction pattern for 'auto &&' type.
   QualType getAutoRRefDeductType() const;
 
+  /// \brief C++1z deduced class template specialization type.
+  QualType getDeducedTemplateSpecializationType(TemplateName Template,
+                                                QualType DeducedType,
+                                                bool IsDependent) const;
+
   /// \brief Return the unique reference to the type for the specified TagDecl
   /// (struct/union/class/enum) decl.
   QualType getTagDeclType(const TagDecl *Decl) const;
@@ -1471,11 +1490,11 @@ public:
 
   /// \brief Return the C structure type used to represent constant CFStrings.
   QualType getCFConstantStringType() const;
-  
+
   /// \brief Returns the C struct type for objc_super
   QualType getObjCSuperType() const;
   void setObjCSuperType(QualType ST) { ObjCSuperType = ST; }
-  
+
   /// Get the structure type used to representation CFStrings, or NULL
   /// if it hasn't yet been built.
   QualType getRawCFConstantStringType() const {
@@ -1496,11 +1515,11 @@ public:
   QualType getObjCNSStringType() const {
     return ObjCNSStringType;
   }
-  
+
   void setObjCNSStringType(QualType T) {
     ObjCNSStringType = T;
   }
-  
+
   /// \brief Retrieve the type that \c id has been defined to, which may be
   /// different from the built-in \c id if \c id has been typedef'd.
   QualType getObjCIdRedefinitionType() const {
@@ -1508,7 +1527,7 @@ public:
       return getObjCIdType();
     return ObjCIdRedefinitionType;
   }
-  
+
   /// \brief Set the user-written type that redefines \c id.
   void setObjCIdRedefinitionType(QualType RedefType) {
     ObjCIdRedefinitionType = RedefType;
@@ -1521,7 +1540,7 @@ public:
       return getObjCClassType();
     return ObjCClassRedefinitionType;
   }
-  
+
   /// \brief Set the user-written type that redefines 'SEL'.
   void setObjCClassRedefinitionType(QualType RedefType) {
     ObjCClassRedefinitionType = RedefType;
@@ -1534,7 +1553,7 @@ public:
       return getObjCSelType();
     return ObjCSelRedefinitionType;
   }
-  
+
   /// \brief Set the user-written type that redefines 'SEL'.
   void setObjCSelRedefinitionType(QualType RedefType) {
     ObjCSelRedefinitionType = RedefType;
@@ -1586,7 +1605,7 @@ public:
   /// \brief Retrieve the typedef declaration corresponding to the Objective-C
   /// "instancetype" type.
   TypedefDecl *getObjCInstanceTypeDecl();
-  
+
   /// \brief Set the type for the C FILE type.
   void setFILEDecl(TypeDecl *FILEDecl) { this->FILEDecl = FILEDecl; }
 
@@ -1671,7 +1690,7 @@ public:
 
   /// \brief Return the encoded type for this block declaration.
   std::string getObjCEncodingForBlock(const BlockExpr *blockExpr) const;
-  
+
   /// getObjCEncodingForPropertyDecl - Return the encoded type for
   /// this method declaration. If non-NULL, Container must be either
   /// an ObjCCategoryImplDecl or ObjCImplementationDecl; it should
@@ -1681,7 +1700,7 @@ public:
 
   bool ProtocolCompatibleWithProtocol(ObjCProtocolDecl *lProto,
                                       ObjCProtocolDecl *rProto) const;
-  
+
   ObjCPropertyImplDecl *getObjCPropertyImplDeclForPropertyDecl(
                                                   const ObjCPropertyDecl *PD,
                                                   const Decl *Container) const;
@@ -1693,7 +1712,7 @@ public:
   /// \brief Retrieve the typedef corresponding to the predefined \c id type
   /// in Objective-C.
   TypedefDecl *getObjCIdDecl() const;
-  
+
   /// \brief Represents the Objective-CC \c id type.
   ///
   /// This is set up lazily, by Sema.  \c id is always a (typedef for a)
@@ -1705,26 +1724,26 @@ public:
   /// \brief Retrieve the typedef corresponding to the predefined 'SEL' type
   /// in Objective-C.
   TypedefDecl *getObjCSelDecl() const;
-  
+
   /// \brief Retrieve the type that corresponds to the predefined Objective-C
   /// 'SEL' type.
-  QualType getObjCSelType() const { 
+  QualType getObjCSelType() const {
     return getTypeDeclType(getObjCSelDecl());
   }
 
   /// \brief Retrieve the typedef declaration corresponding to the predefined
   /// Objective-C 'Class' type.
   TypedefDecl *getObjCClassDecl() const;
-  
+
   /// \brief Represents the Objective-C \c Class type.
   ///
   /// This is set up lazily, by Sema.  \c Class is always a (typedef for a)
   /// pointer type, a pointer to a struct.
-  QualType getObjCClassType() const { 
+  QualType getObjCClassType() const {
     return getTypeDeclType(getObjCClassDecl());
   }
 
-  /// \brief Retrieve the Objective-C class declaration corresponding to 
+  /// \brief Retrieve the Objective-C class declaration corresponding to
   /// the predefined \c Protocol class.
   ObjCInterfaceDecl *getObjCProtocolDecl() const;
 
@@ -1742,12 +1761,12 @@ public:
   QualType getBOOLType() const {
     return getTypeDeclType(getBOOLDecl());
   }
-  
+
   /// \brief Retrieve the type of the Objective-C \c Protocol class.
   QualType getObjCProtoType() const {
     return getObjCInterfaceType(getObjCProtocolDecl());
   }
-  
+
   /// \brief Retrieve the C type declaration corresponding to the predefined
   /// \c __builtin_va_list type.
   TypedefDecl *getBuiltinVaListDecl() const;
@@ -1810,7 +1829,7 @@ public:
     qs.addObjCLifetime(lifetime);
     return getQualifiedType(type, qs);
   }
-  
+
   /// getUnqualifiedObjCPointerType - Returns version of
   /// Objective-C pointer type with lifetime qualifier removed.
   QualType getUnqualifiedObjCPointerType(QualType type) const {
@@ -1821,7 +1840,7 @@ public:
     Qs.removeObjCLifetime();
     return getQualifiedType(type.getUnqualifiedType(), Qs);
   }
-  
+
   DeclarationNameInfo getNameForTemplate(TemplateName Name,
                                          SourceLocation NameLoc) const;
 
@@ -1840,7 +1859,7 @@ public:
                                             TemplateName replacement) const;
   TemplateName getSubstTemplateTemplateParmPack(TemplateTemplateParmDecl *Param,
                                         const TemplateArgument &ArgPack) const;
-  
+
   enum GetBuiltinTypeError {
     GE_None,              ///< No error
     GE_Missing_stdio,     ///< Missing a type from <stdio.h>
@@ -1905,7 +1924,7 @@ public:
   uint64_t getCharWidth() const {
     return getTypeSize(CharTy);
   }
-  
+
   /// \brief Convert a size in bits to a size in characters.
   CharUnits toCharUnitsFromBits(int64_t BitSize) const;
 
@@ -1927,11 +1946,11 @@ public:
   /// example, from alignment attributes).
   unsigned getTypeAlignIfKnown(QualType T) const;
 
-  /// \brief Return the ABI-specified alignment of a (complete) type \p T, in 
+  /// \brief Return the ABI-specified alignment of a (complete) type \p T, in
   /// characters.
   CharUnits getTypeAlignInChars(QualType T) const;
   CharUnits getTypeAlignInChars(const Type *T) const;
-  
+
   // getTypeInfoDataSizeInChars - Return the size of a type, in chars. If the
   // type is a record, its data size is returned.
   std::pair<CharUnits, CharUnits> getTypeInfoDataSizeInChars(QualType T) const;
@@ -2036,10 +2055,10 @@ public:
   VTableContextBase *getVTableContext();
 
   MangleContext *createMangleContext();
-  
+
   void DeepCollectObjCIvars(const ObjCInterfaceDecl *OI, bool leafClass,
                             SmallVectorImpl<const ObjCIvarDecl*> &Ivars) const;
-  
+
   unsigned CountNonClassIvars(const ObjCInterfaceDecl *OI) const;
   void CollectInheritedProtocols(const Decl *CDecl,
                           llvm::SmallPtrSet<ObjCProtocolDecl*, 8> &Protocols);
@@ -2115,7 +2134,7 @@ public:
           *SubTnullability == NullabilityKind::Unspecified ||
           *SuperTnullability == NullabilityKind::Unspecified)
         return true;
-      
+
       if (IsParam) {
         // Ok for the superclass method parameter to be "nonnull" and the subclass
         // method parameter to be "nullable"
@@ -2134,9 +2153,9 @@ public:
 
   bool ObjCMethodsAreEqual(const ObjCMethodDecl *MethodDecl,
                            const ObjCMethodDecl *MethodImp);
-  
+
   bool UnwrapSimilarPointerTypes(QualType &T1, QualType &T2);
-  
+
   /// \brief Retrieves the "canonical" nested name specifier for a
   /// given nested name specifier.
   ///
@@ -2190,7 +2209,7 @@ public:
   /// \brief Determine whether the given template names refer to the same
   /// template.
   bool hasSameTemplateName(TemplateName X, TemplateName Y);
-  
+
   /// \brief Retrieve the "canonical" template argument.
   ///
   /// The canonical template argument is the simplest template argument
@@ -2217,7 +2236,7 @@ public:
     const {
     return dyn_cast_or_null<DependentSizedArrayType>(getAsArrayType(T));
   }
-  
+
   /// \brief Return the innermost element type of an array type.
   ///
   /// For example, will return "int" for int[m][n]
@@ -2236,14 +2255,14 @@ public:
   /// parameter type used by semantic analysis (C99 6.7.5.3p[7,8],
   /// C++ [dcl.fct]p3). The adjusted parameter type is returned.
   QualType getAdjustedParameterType(QualType T) const;
-  
+
   /// \brief Retrieve the parameter type as adjusted for use in the signature
   /// of a function, decaying array and function types and removing top-level
   /// cv-qualifiers.
   QualType getSignatureParameterType(QualType T) const;
-  
+
   QualType getExceptionObjectType(QualType T) const;
-  
+
   /// \brief Return the properly qualified result of decaying the specified
   /// array type to a pointer.
   ///
@@ -2269,7 +2288,7 @@ public:
   /// promotion occurs.
   QualType isPromotableBitField(Expr *E) const;
 
-  /// \brief Return the highest ranked integer type, see C99 6.3.1.8p1. 
+  /// \brief Return the highest ranked integer type, see C99 6.3.1.8p1.
   ///
   /// If \p LHS > \p RHS, returns 1.  If \p LHS == \p RHS, returns 0.  If
   /// \p LHS < \p RHS, return -1.
@@ -2298,12 +2317,7 @@ public:
     return getTargetAddressSpace(Q.getAddressSpace());
   }
 
-  unsigned getTargetAddressSpace(unsigned AS) const {
-    if (AS < LangAS::Offset || AS >= LangAS::Offset + LangAS::Count)
-      return AS;
-    else
-      return (*AddrSpaceMap)[AS - LangAS::Offset];
-  }
+  unsigned getTargetAddressSpace(unsigned AS) const;
 
   /// Get target-dependent integer value for null pointer which is used for
   /// constant folding.
@@ -2311,8 +2325,7 @@ public:
 
   bool addressSpaceMapManglingFor(unsigned AS) const {
     return AddrSpaceMapMangling || 
-           AS < LangAS::Offset || 
-           AS >= LangAS::Offset + LangAS::Count;
+           AS >= LangAS::Count;
   }
 
 private:
@@ -2325,11 +2338,11 @@ public:
   //===--------------------------------------------------------------------===//
 
   /// Compatibility predicates used to check assignment expressions.
-  bool typesAreCompatible(QualType T1, QualType T2, 
+  bool typesAreCompatible(QualType T1, QualType T2,
                           bool CompareUnqualified = false); // C99 6.2.7p1
 
-  bool propertyTypesAreCompatible(QualType, QualType); 
-  bool typesAreBlockPointerCompatible(QualType, QualType); 
+  bool propertyTypesAreCompatible(QualType, QualType);
+  bool typesAreBlockPointerCompatible(QualType, QualType);
 
   bool isObjCIdType(QualType T) const {
     return T == getObjCIdType();
@@ -2344,7 +2357,7 @@ public:
                                          bool ForCompare);
 
   bool ObjCQualifiedClassTypesAreCompatible(QualType LHS, QualType RHS);
-  
+
   // Check the safety of assignment from LHS to RHS
   bool canAssignObjCInterfaces(const ObjCObjectPointerType *LHSOPT,
                                const ObjCObjectPointerType *RHSOPT);
@@ -2370,9 +2383,9 @@ public:
   QualType mergeTransparentUnionType(QualType, QualType,
                                      bool OfBlockPointer=false,
                                      bool Unqualified = false);
-  
+
   QualType mergeObjCGCQualifiers(QualType, QualType);
-    
+
   bool doFunctionTypesMatchOnExtParameterInfos(
          const FunctionProtoType *FromFunctionType,
          const FunctionProtoType *ToFunctionType);
@@ -2442,7 +2455,7 @@ public:
   /// an Objective-C method/property/ivar etc. that is part of an interface,
   /// otherwise returns null.
   const ObjCInterfaceDecl *getObjContainingInterface(const NamedDecl *ND) const;
-  
+
   /// \brief Set the copy inialization expression of a block var decl.
   void setBlockVarCopyInits(VarDecl*VD, Expr* Init);
   /// \brief Get the copy initialization expression of the VarDecl \p VD, or
@@ -2466,10 +2479,10 @@ public:
   /// initialized to a given location, which defaults to the empty
   /// location.
   TypeSourceInfo *
-  getTrivialTypeSourceInfo(QualType T, 
+  getTrivialTypeSourceInfo(QualType T,
                            SourceLocation Loc = SourceLocation()) const;
 
-  /// \brief Add a deallocation callback that will be invoked when the 
+  /// \brief Add a deallocation callback that will be invoked when the
   /// ASTContext is destroyed.
   ///
   /// \param Callback A callback function that will be invoked on destruction.
@@ -2478,6 +2491,16 @@ public:
   /// when it is called.
   void AddDeallocation(void (*Callback)(void*), void *Data);
 
+  /// If T isn't trivially destructible, calls AddDeallocation to register it
+  /// for destruction.
+  template <typename T>
+  void addDestruction(T *Ptr) {
+    if (!std::is_trivially_destructible<T>::value) {
+      auto DestroyPtr = [](void *V) { static_cast<T *>(V)->~T(); };
+      AddDeallocation(DestroyPtr, Ptr);
+    }
+  }
+
   GVALinkage GetGVALinkageForFunction(const FunctionDecl *FD) const;
   GVALinkage GetGVALinkageForVariable(const VarDecl *VD);
 
@@ -2534,15 +2557,15 @@ public:
 
   /// \brief The number of implicitly-declared default constructors.
   static unsigned NumImplicitDefaultConstructors;
-  
-  /// \brief The number of implicitly-declared default constructors for 
+
+  /// \brief The number of implicitly-declared default constructors for
   /// which declarations were built.
   static unsigned NumImplicitDefaultConstructorsDeclared;
 
   /// \brief The number of implicitly-declared copy constructors.
   static unsigned NumImplicitCopyConstructors;
-  
-  /// \brief The number of implicitly-declared copy constructors for 
+
+  /// \brief The number of implicitly-declared copy constructors for
   /// which declarations were built.
   static unsigned NumImplicitCopyConstructorsDeclared;
 
@@ -2555,25 +2578,25 @@ public:
 
   /// \brief The number of implicitly-declared copy assignment operators.
   static unsigned NumImplicitCopyAssignmentOperators;
-  
-  /// \brief The number of implicitly-declared copy assignment operators for 
+
+  /// \brief The number of implicitly-declared copy assignment operators for
   /// which declarations were built.
   static unsigned NumImplicitCopyAssignmentOperatorsDeclared;
 
   /// \brief The number of implicitly-declared move assignment operators.
   static unsigned NumImplicitMoveAssignmentOperators;
-  
-  /// \brief The number of implicitly-declared move assignment operators for 
+
+  /// \brief The number of implicitly-declared move assignment operators for
   /// which declarations were built.
   static unsigned NumImplicitMoveAssignmentOperatorsDeclared;
 
   /// \brief The number of implicitly-declared destructors.
   static unsigned NumImplicitDestructors;
-  
-  /// \brief The number of implicitly-declared destructors for which 
+
+  /// \brief The number of implicitly-declared destructors for which
   /// declarations were built.
   static unsigned NumImplicitDestructorsDeclared;
-  
+
 public:
   /// \brief Initialize built-in types.
   ///

Modified: projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ASTVector.h
==============================================================================
--- projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ASTVector.h	Sun Apr 16 16:25:46 2017	(r317029)
+++ projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ASTVector.h	Sun Apr 16 16:31:20 2017	(r317030)
@@ -22,6 +22,7 @@
 #include "llvm/ADT/PointerIntPair.h"
 #include "llvm/Support/type_traits.h"
 #include <algorithm>
+#include <cstddef>
 #include <cstring>
 #include <memory>
 

Modified: projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/BuiltinTypes.def
==============================================================================
--- projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/BuiltinTypes.def	Sun Apr 16 16:25:46 2017	(r317029)
+++ projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/BuiltinTypes.def	Sun Apr 16 16:31:20 2017	(r317030)
@@ -169,9 +169,6 @@ BUILTIN_TYPE(OCLClkEvent, OCLClkEventTy)
 // OpenCL queue_t.
 BUILTIN_TYPE(OCLQueue, OCLQueueTy)
 
-// OpenCL ndrange_t.
-BUILTIN_TYPE(OCLNDRange, OCLNDRangeTy)
-
 // OpenCL reserve_id_t.
 BUILTIN_TYPE(OCLReserveID, OCLReserveIDTy)
 

Modified: projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Decl.h
==============================================================================
--- projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Decl.h	Sun Apr 16 16:25:46 2017	(r317029)
+++ projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Decl.h	Sun Apr 16 16:31:20 2017	(r317030)
@@ -838,7 +838,7 @@ protected:
 
     /// Describes the kind of default argument for this parameter. By default
     /// this is none. If this is normal, then the default argument is stored in
-    /// the \c VarDecl initalizer expression unless we were unble to parse
+    /// the \c VarDecl initializer expression unless we were unable to parse
     /// (even an invalid) expression for the default argument.
     unsigned DefaultArgKind : 2;
 
@@ -1605,9 +1605,14 @@ private:
 
   // FIXME: This can be packed into the bitfields in DeclContext.
   // NOTE: VC++ packs bitfields poorly if the types differ.
-  unsigned SClass : 2;
+  unsigned SClass : 3;
   unsigned IsInline : 1;
   unsigned IsInlineSpecified : 1;
+protected:
+  // This is shared by CXXConstructorDecl, CXXConversionDecl, and
+  // CXXDeductionGuideDecl.
+  unsigned IsExplicitSpecified : 1;
+private:
   unsigned IsVirtualAsWritten : 1;
   unsigned IsPure : 1;
   unsigned HasInheritedPrototype : 1;
@@ -1708,8 +1713,9 @@ protected:
                        StartLoc),
         DeclContext(DK), redeclarable_base(C), ParamInfo(nullptr), Body(),
         SClass(S), IsInline(isInlineSpecified),
-        IsInlineSpecified(isInlineSpecified), IsVirtualAsWritten(false),
-        IsPure(false), HasInheritedPrototype(false), HasWrittenPrototype(true),
+        IsInlineSpecified(isInlineSpecified), IsExplicitSpecified(false),
+        IsVirtualAsWritten(false), IsPure(false),
+        HasInheritedPrototype(false), HasWrittenPrototype(true),
         IsDeleted(false), IsTrivial(false), IsDefaulted(false),
         IsExplicitlyDefaulted(false), HasImplicitReturnZero(false),
         IsLateTemplateParsed(false), IsConstexpr(isConstexprSpecified),
@@ -2635,12 +2641,17 @@ class TypedefNameDecl : public TypeDecl,
   typedef std::pair<TypeSourceInfo*, QualType> ModedTInfo;
   llvm::PointerUnion<TypeSourceInfo*, ModedTInfo*> MaybeModedTInfo;
 
+  // FIXME: This can be packed into the bitfields in Decl.
+  /// If 0, we have not computed IsTransparentTag.
+  /// Otherwise, IsTransparentTag is (CacheIsTransparentTag >> 1).
+  mutable unsigned CacheIsTransparentTag : 2;
+
 protected:
   TypedefNameDecl(Kind DK, ASTContext &C, DeclContext *DC,
                   SourceLocation StartLoc, SourceLocation IdLoc,
                   IdentifierInfo *Id, TypeSourceInfo *TInfo)
       : TypeDecl(DK, DC, IdLoc, Id, StartLoc), redeclarable_base(C),
-        MaybeModedTInfo(TInfo) {}
+        MaybeModedTInfo(TInfo), CacheIsTransparentTag(0) {}
 
   typedef Redeclarable<TypedefNameDecl> redeclarable_base;
   TypedefNameDecl *getNextRedeclarationImpl() override {
@@ -2693,11 +2704,22 @@ public:
   /// this typedef declaration.
   TagDecl *getAnonDeclWithTypedefName(bool AnyRedecl = false) const;
 
+  /// Determines if this typedef shares a name and spelling location with its
+  /// underlying tag type, as is the case with the NS_ENUM macro.
+  bool isTransparentTag() const {
+    if (CacheIsTransparentTag)
+      return CacheIsTransparentTag & 0x2;
+    return isTransparentTagSlow();
+  }
+
   // Implement isa/cast/dyncast/etc.
   static bool classof(const Decl *D) { return classofKind(D->getKind()); }
   static bool classofKind(Kind K) {
     return K >= firstTypedefName && K <= lastTypedefName;
   }
+
+private:
+  bool isTransparentTagSlow() const;
 };
 
 /// TypedefDecl - Represents the declaration of a typedef-name via the 'typedef'
@@ -3229,6 +3251,18 @@ public:
     return isCompleteDefinition() || isFixed();
   }
 
+  /// Returns true if this enum is either annotated with
+  /// enum_extensibility(closed) or isn't annotated with enum_extensibility.
+  bool isClosed() const;
+
+  /// Returns true if this enum is annotated with flag_enum and isn't annotated
+  /// with enum_extensibility(open).
+  bool isClosedFlag() const;
+
+  /// Returns true if this enum is annotated with neither flag_enum nor
+  /// enum_extensibility(open).
+  bool isClosedNonFlag() const;
+
   /// \brief Retrieve the enum definition from which this enumeration could
   /// be instantiated, if it is an instantiation (rather than a non-template).
   EnumDecl *getTemplateInstantiationPattern() const;

Modified: projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h
==============================================================================
--- projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h	Sun Apr 16 16:25:46 2017	(r317029)
+++ projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h	Sun Apr 16 16:31:20 2017	(r317030)
@@ -654,20 +654,19 @@ public:
   /// a precompiled header or module) rather than having been parsed.
   bool isFromASTFile() const { return FromASTFile; }
 
-  /// \brief Retrieve the global declaration ID associated with this 
-  /// declaration, which specifies where in the 
-  unsigned getGlobalID() const { 
+  /// \brief Retrieve the global declaration ID associated with this
+  /// declaration, which specifies where this Decl was loaded from.
+  unsigned getGlobalID() const {
     if (isFromASTFile())
       return *((const unsigned*)this - 1);
     return 0;
   }
-  
+
   /// \brief Retrieve the global ID of the module that owns this particular
   /// declaration.
   unsigned getOwningModuleID() const {
     if (isFromASTFile())
       return *((const unsigned*)this - 2);
-    
     return 0;
   }
 
@@ -1030,7 +1029,7 @@ public:
   void dump() const;
   // Same as dump(), but forces color printing.
   void dumpColor() const;
-  void dump(raw_ostream &Out) const;
+  void dump(raw_ostream &Out, bool Deserialize = false) const;
 
   /// \brief Looks through the Decl's underlying type to extract a FunctionType
   /// when possible. Will return null if the type underlying the Decl does not
@@ -1811,7 +1810,8 @@ public:
 
   void dumpDeclContext() const;
   void dumpLookups() const;
-  void dumpLookups(llvm::raw_ostream &OS, bool DumpDecls = false) const;
+  void dumpLookups(llvm::raw_ostream &OS, bool DumpDecls = false,
+                   bool Deserialize = false) const;
 
 private:
   void reconcileExternalVisibleStorage() const;

Modified: projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h
==============================================================================
--- projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h	Sun Apr 16 16:25:46 2017	(r317029)
+++ projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h	Sun Apr 16 16:31:20 2017	(r317030)
@@ -203,6 +203,11 @@ public:
   SourceLocation getLocStart() const LLVM_READONLY { return Range.getBegin(); }
   SourceLocation getLocEnd() const LLVM_READONLY { return Range.getEnd(); }
 
+  /// \brief Get the location at which the base class type was written.
+  SourceLocation getBaseTypeLoc() const LLVM_READONLY {
+    return BaseTypeInfo->getTypeLoc().getLocStart();
+  }
+
   /// \brief Determines whether the base class is a virtual base class (or not).
   bool isVirtual() const { return Virtual; }
 
@@ -436,9 +441,10 @@ class CXXRecordDecl : public RecordDecl 
     /// either by the user or implicitly.
     unsigned DeclaredSpecialMembers : 6;
 
-    /// \brief Whether an implicit copy constructor would have a const-qualified
-    /// parameter.
-    unsigned ImplicitCopyConstructorHasConstParam : 1;
+    /// \brief Whether an implicit copy constructor could have a const-qualified
+    /// parameter, for initializing virtual bases and for other subobjects.
+    unsigned ImplicitCopyConstructorCanHaveConstParamForVBase : 1;
+    unsigned ImplicitCopyConstructorCanHaveConstParamForNonVBase : 1;
 
     /// \brief Whether an implicit copy assignment operator would have a
     /// const-qualified parameter.
@@ -458,6 +464,11 @@ class CXXRecordDecl : public RecordDecl 
     /// \brief Whether we are currently parsing base specifiers.
     unsigned IsParsingBaseSpecifiers : 1;
 
+    unsigned HasODRHash : 1;

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201704161631.v3GGVLdD009112>