svn commit: r356998 - in projects/clang1000-import/contrib/llvm-project/clang: include/clang include/clang-c include/clang/AST include/clang/ASTMatchers include/clang/Analysis include/clang/Basic i...

Dimitry Andric dim at FreeBSD.org
Wed Jan 22 21:31:52 UTC 2020


Author: dim
Date: Wed Jan 22 21:31:48 2020
New Revision: 356998
URL: https://svnweb.freebsd.org/changeset/base/356998

Log:
  Merge ^/vendor/clang/dist up to its last change, and resolve conflicts.

Added:
  projects/clang1000-import/contrib/llvm-project/clang/include/clang-c/FatalErrorHandler.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang-c/FatalErrorHandler.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/CXXRecordDeclDefinitionBits.def
     - copied unchanged from r356992, vendor/clang/dist/include/clang/AST/CXXRecordDeclDefinitionBits.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/OptionalDiagnostic.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/AST/OptionalDiagnostic.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Analysis/PathDiagnostic.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Analysis/PathDiagnostic.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/AArch64SVEACLETypes.def
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Basic/AArch64SVEACLETypes.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/AttributeCommonInfo.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Basic/AttributeCommonInfo.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/BuiltinsBPF.def
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Basic/BuiltinsBPF.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/LangStandard.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Basic/LangStandard.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/LangStandards.def
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Basic/LangStandards.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/TypeNodes.td
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Basic/TypeNodes.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Index/IndexingOptions.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Index/IndexingOptions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/PreprocessorExcludedConditionalDirectiveSkipMapping.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Lex/PreprocessorExcludedConditionalDirectiveSkipMapping.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicCastInfo.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicCastInfo.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicType.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicType.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Refactoring/Extract/SourceExtraction.h
     - copied unchanged from r356992, vendor/clang/dist/include/clang/Tooling/Refactoring/Extract/SourceExtraction.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Transformer/
     - copied from r356992, vendor/clang/dist/include/clang/Tooling/Transformer/
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/Interp/
     - copied from r356992, vendor/clang/dist/lib/AST/Interp/
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/PathDiagnostic.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/Analysis/PathDiagnostic.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/LangStandards.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/Basic/LangStandards.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Stack.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/Basic/Stack.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/DirectoryWatcher/windows/
     - copied from r356992, vendor/clang/dist/lib/DirectoryWatcher/windows/
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/InterfaceStubs.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/Driver/ToolChains/InterfaceStubs.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/InterfaceStubs.h
     - copied unchanged from r356992, vendor/clang/dist/lib/Driver/ToolChains/InterfaceStubs.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/ppc_wrappers/pmmintrin.h
     - copied unchanged from r356992, vendor/clang/dist/lib/Headers/ppc_wrappers/pmmintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/ppc_wrappers/smmintrin.h
     - copied unchanged from r356992, vendor/clang/dist/lib/Headers/ppc_wrappers/smmintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/ppc_wrappers/tmmintrin.h
     - copied unchanged from r356992, vendor/clang/dist/lib/Headers/ppc_wrappers/tmmintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaConcept.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/Sema/SemaConcept.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/Yaml.h
     - copied unchanged from r356992, vendor/clang/dist/lib/StaticAnalyzer/Checkers/Yaml.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/DynamicType.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/StaticAnalyzer/Core/DynamicType.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
     - copied unchanged from r356992, vendor/clang/dist/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Transformer/
     - copied from r356992, vendor/clang/dist/lib/Tooling/Transformer/
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangOpcodesEmitter.cpp
     - copied unchanged from r356992, vendor/clang/dist/utils/TableGen/ClangOpcodesEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangTypeNodesEmitter.cpp
     - copied unchanged from r356992, vendor/clang/dist/utils/TableGen/ClangTypeNodesEmitter.cpp
Deleted:
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/TypeNodes.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Frontend/LangStandard.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Frontend/LangStandards.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Index/CodegenNameGenerator.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeMap.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Refactoring/RangeSelector.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Refactoring/SourceCode.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Refactoring/Stencil.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Refactoring/Transformer.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/LangStandards.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Index/CodegenNameGenerator.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/DynamicTypeMap.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/Extract/SourceExtraction.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/RangeSelector.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/SourceCode.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/Stencil.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/Transformer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Transformer/CMakeLists.txt
Modified:
  projects/clang1000-import/contrib/llvm-project/clang/include/clang-c/Index.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/APValue.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTContext.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTFwd.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTImporter.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTImporterSharedState.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTNodeTraverser.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTStructuralEquivalence.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTTypeTraits.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Attr.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/CharUnits.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/CommentCommands.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/CommentLexer.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Decl.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/DeclBase.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/DeclCXX.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/DeclTemplate.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Expr.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ExprCXX.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ExternalASTMerger.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/FormatString.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/GlobalDecl.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/JSONNodeDumper.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Mangle.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/NSAPI.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/OpenMPClause.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/OperationKinds.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/RawCommentList.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Stmt.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/StmtOpenMP.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/TextNodeDumper.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Type.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/TypeLoc.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/TypeLocNodes.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/TypeVisitor.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/ASTMatchers/ASTMatchers.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/ASTMatchers/ASTMatchersInternal.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Analysis/AnalysisDeclContext.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Analysis/CFG.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Analysis/CallGraph.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/Attr.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/AttrDocs.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/Builtins.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/BuiltinsAArch64.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/BuiltinsAMDGPU.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/BuiltinsARM.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/BuiltinsPPC.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/BuiltinsWebAssembly.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/BuiltinsX86.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/BuiltinsX86_64.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/CodeGenOptions.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/CodeGenOptions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/Diagnostic.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticASTKinds.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticCommentKinds.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticCommonKinds.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticDriverKinds.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticFrontendKinds.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticGroups.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticOptions.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticParseKinds.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSerializationKinds.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/Features.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/FileManager.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/IdentifierTable.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/LangOptions.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/LangOptions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/Linkage.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/OpenCLOptions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/OpenMPKinds.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/OpenMPKinds.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/OperatorKinds.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/SourceManager.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/Specifiers.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/Stack.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/StmtNodes.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/SyncScope.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/TargetBuiltins.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/TargetInfo.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/TokenKinds.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/TokenKinds.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/X86Target.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Basic/arm_neon.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/CrossTU/CrossTranslationUnit.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/DirectoryWatcher/DirectoryWatcher.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/Action.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/CC1Options.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/CLCompatOptions.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/Driver.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/Options.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/Options.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/Phases.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/SanitizerArgs.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/ToolChain.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/Types.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Driver/Types.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Format/Format.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Frontend/ASTUnit.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Frontend/CompilerInstance.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Frontend/FrontendActions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Frontend/FrontendOptions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Frontend/Utils.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Index/IndexDataConsumer.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Index/IndexingAction.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/DependencyDirectivesSourceMinimizer.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/DirectoryLookup.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/HeaderMap.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/HeaderSearch.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/HeaderSearchOptions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/Lexer.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/MacroArgs.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/PPCallbacks.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/Preprocessor.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Lex/PreprocessorOptions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Parse/Parser.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Rewrite/Core/Rewriter.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Sema/Overload.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Sema/ParsedAttr.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Sema/ScopeInfo.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Sema/Sema.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Sema/SemaInternal.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Sema/TypoCorrection.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Serialization/ASTBitCodes.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Serialization/ASTReader.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/Checker.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/ASTDiff/ASTDiff.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/AllTUsExecution.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/ArgumentsAdjusters.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Execution.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Inclusions/HeaderIncludes.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Inclusions/IncludeStyle.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Refactoring/RefactoringActionRulesInternal.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/StandaloneExecution.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Syntax/Tokens.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/Tooling/Tooling.h
  projects/clang1000-import/contrib/llvm-project/clang/include/clang/module.modulemap
  projects/clang1000-import/contrib/llvm-project/clang/lib/ARCMigrate/ARCMT.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/ARCMigrate/FileRemapper.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/ARCMigrate/ObjCMT.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/ARCMigrate/PlistReporter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/APValue.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ASTContext.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ASTDiagnostic.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ASTImporter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ASTStructuralEquivalence.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ASTTypeTraits.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/CXXInheritance.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/Comment.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/CommentLexer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/CommentParser.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/CommentSema.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/Decl.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/DeclBase.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/DeclCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/DeclPrinter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/DeclTemplate.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/Expr.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ExprCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ExprClassification.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ExprConstant.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ExternalASTMerger.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/FormatString.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/FormatStringParsing.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/InheritViz.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ItaniumCXXABI.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/ItaniumMangle.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/JSONNodeDumper.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/Mangle.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/MicrosoftCXXABI.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/MicrosoftMangle.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/NSAPI.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/OpenMPClause.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/PrintfFormatString.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/RawCommentList.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/Stmt.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/StmtOpenMP.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/StmtPrinter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/StmtProfile.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/TemplateBase.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/TextNodeDumper.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/Type.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/TypeLoc.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/TypePrinter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/VTTBuilder.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/AST/VTableBuilder.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/ASTMatchers/Dynamic/Marshallers.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/ASTMatchers/Dynamic/Registry.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/AnalysisDeclContext.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/BodyFarm.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/CFG.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/CallGraph.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/CloneDetection.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/CocoaConventions.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/Consumed.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/ProgramPoint.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/ReachableCode.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/RetainSummaryManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/ThreadSafety.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Analysis/plugins/SampleAnalyzer/MainCallChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Attributes.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/FileManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/IdentifierTable.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Module.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/OpenMPKinds.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/SourceManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/TargetInfo.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/AArch64.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/AArch64.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/AMDGPU.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/ARM.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/BPF.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/BPF.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/OSTargets.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/Sparc.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/SystemZ.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/X86.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/Targets/X86.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Basic/TokenKinds.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/BackendUtil.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGAtomic.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGBlocks.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGBuiltin.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGCUDANV.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGCXXABI.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGCXXABI.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGCall.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGClass.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGCleanup.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGDebugInfo.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGDecl.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGException.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGExpr.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGExprAgg.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGExprCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGExprComplex.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGExprConstant.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGExprScalar.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGLoopInfo.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGLoopInfo.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGNonTrivialStruct.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGObjC.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGObjCGNU.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGObjCMac.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGOpenMPRuntime.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CGVTables.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CodeGenAction.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CodeGenModule.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CodeGenPGO.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CodeGenPGO.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CodeGenTypes.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/ConstantInitBuilder.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CoverageMappingGen.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/CoverageMappingGen.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/EHScopeStack.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/ItaniumCXXABI.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/MicrosoftCXXABI.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/CrossTU/CrossTranslationUnit.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/DirectoryWatcher/default/DirectoryWatcher-not-implemented.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/DirectoryWatcher/linux/DirectoryWatcher-linux.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/DirectoryWatcher/mac/DirectoryWatcher-mac.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/Action.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/Compilation.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/Driver.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/DriverOptions.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/Phases.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/SanitizerArgs.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChain.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/AMDGPU.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/AVR.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Ananas.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/AArch64.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/ARM.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Mips.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/PPC.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/RISCV.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/RISCV.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/X86.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/BareMetal.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/CloudABI.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/CommonArgs.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/CommonArgs.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/CrossWindows.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Cuda.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Darwin.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/DragonFly.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/FreeBSD.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Fuchsia.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Fuchsia.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/HIP.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/HIP.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Hexagon.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Linux.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/MSP430.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/MSVC.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/MSVC.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/MinGW.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/MinGW.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Minix.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Myriad.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/NaCl.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/NetBSD.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/OpenBSD.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/PPCLinux.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/PS4CPU.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/RISCVToolchain.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/RISCVToolchain.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/Solaris.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/WebAssembly.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/ToolChains/XCore.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/Types.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Driver/XRayArgs.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/BreakableToken.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/ContinuationIndenter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/Encoding.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/Format.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/FormatToken.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/FormatTokenLexer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/FormatTokenLexer.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/NamespaceEndCommentsFixer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/TokenAnnotator.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/TokenAnnotator.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/UnwrappedLineFormatter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/UnwrappedLineParser.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/UnwrappedLineParser.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Format/WhitespaceManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/ASTConsumers.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/ASTUnit.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/ChainedIncludesSource.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/CompilerInstance.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/CompilerInvocation.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/DependencyFile.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/DependencyGraph.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/FrontendAction.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/FrontendActions.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/FrontendOptions.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/HeaderIncludeGen.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/InitHeaderSearch.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/InitPreprocessor.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/ModuleDependencyCollector.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/MultiplexConsumer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/PrecompiledPreamble.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/PrintPreprocessedOutput.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/Rewrite/FixItRewriter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/Rewrite/FrontendActions.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/Rewrite/HTMLPrint.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/Rewrite/InclusionRewriter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/Rewrite/RewriteObjC.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/TextDiagnostic.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/__clang_cuda_intrinsics.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/altivec.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/arm_acle.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/avx512fintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/bmiintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/cpuid.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/ia32intrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/immintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/opencl-c-base.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/ppc_wrappers/emmintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/ppc_wrappers/mm_malloc.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/ppc_wrappers/mmintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Headers/ppc_wrappers/xmmintrin.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Index/IndexSymbol.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Index/IndexingAction.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Index/USRGeneration.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/DependencyDirectivesSourceMinimizer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/HeaderMap.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/HeaderSearch.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/Lexer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/MacroArgs.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/ModuleMap.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/PPDirectives.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/PPLexerChange.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/PPMacroExpansion.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/Pragma.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/Preprocessor.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/TokenLexer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Lex/UnicodeCharSets.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseCXXInlineMethods.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseDecl.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseDeclCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseExpr.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseExprCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseInit.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseObjc.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseOpenMP.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParsePragma.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseStmt.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseTemplate.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/ParseTentative.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Parse/Parser.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Rewrite/Rewriter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/AnalysisBasedWarnings.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/DeclSpec.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/OpenCLBuiltins.td
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/ParsedAttr.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/Sema.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaAccess.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaAttr.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaCUDA.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaCXXScopeSpec.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaCast.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaChecking.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaCodeComplete.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaCoroutine.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaDeclAttr.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaDeclCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaDeclObjC.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaExceptionSpec.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaExprMember.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaExprObjC.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaInit.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaLambda.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaModule.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaObjCProperty.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaOpenMP.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaOverload.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaStmt.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaStmtAttr.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaTemplateDeduction.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiate.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaTemplateVariadic.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/SemaType.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/TreeTransform.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/TypeLocBuilder.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Sema/TypeLocBuilder.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/ASTCommon.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/ASTReader.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/ASTReaderStmt.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/ASTWriter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/ASTWriterDecl.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/ASTWriterStmt.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/GlobalModuleIndex.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/ModuleManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Serialization/PCHContainerOperations.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CastValueChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckObjCInstMethSignature.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CloneChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/DebugCheckers.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/DeleteWithNonVirtualDtorChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/EnumCastOutOfRangeChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MallocSizeofChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/NSAutoreleasePoolChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ReturnUndefChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/Taint.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/Taint.h
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/TaintTesterChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedPointee.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/BugReporter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/CallEvent.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/Checker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/CommonBugCategories.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/Environment.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/MemRegion.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ProgramState.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/RegionStore.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/SMTConstraintManager.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/Store.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/WorkList.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Frontend/FrontendActions.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/ASTDiff/ASTDiff.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/AllTUsExecution.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/ArgumentsAdjusters.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/CommonOptionsParser.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/CompilationDatabase.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Core/Replacement.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/GuessTargetAndModeCompilationDatabase.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Inclusions/IncludeStyle.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/ASTSelectionRequirements.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/Extract/Extract.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/Extract/SourceExtraction.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/RefactoringActions.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/Rename/RenamingAction.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/Rename/SymbolOccurrences.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/RefactoringCallbacks.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/StandaloneExecution.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Syntax/BuildTree.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Syntax/Tokens.cpp
  projects/clang1000-import/contrib/llvm-project/clang/lib/Tooling/Tooling.cpp
  projects/clang1000-import/contrib/llvm-project/clang/tools/clang-format/ClangFormat.cpp
  projects/clang1000-import/contrib/llvm-project/clang/tools/driver/cc1_main.cpp
  projects/clang1000-import/contrib/llvm-project/clang/tools/driver/cc1as_main.cpp
  projects/clang1000-import/contrib/llvm-project/clang/tools/driver/driver.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangASTNodesEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangAttrEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangCommentCommandInfoEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangDataCollectorsEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangOptionDocEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/ClangSACheckersEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/NeonEmitter.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/TableGen.cpp
  projects/clang1000-import/contrib/llvm-project/clang/utils/TableGen/TableGenBackends.h
Directory Properties:
  projects/clang1000-import/contrib/llvm-project/clang/   (props changed)

Copied: projects/clang1000-import/contrib/llvm-project/clang/include/clang-c/FatalErrorHandler.h (from r356992, vendor/clang/dist/include/clang-c/FatalErrorHandler.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang-c/FatalErrorHandler.h	Wed Jan 22 21:31:48 2020	(r356998, copy of r356992, vendor/clang/dist/include/clang-c/FatalErrorHandler.h)
@@ -0,0 +1,33 @@
+/*===-- clang-c/FatalErrorHandler.h - Fatal Error Handling --------*- C -*-===*\
+|*                                                                            *|
+|* Part of the LLVM Project, under the Apache License v2.0 with LLVM          *|
+|* Exceptions.                                                                *|
+|* See https://llvm.org/LICENSE.txt for license information.                  *|
+|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception                    *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+#ifndef LLVM_CLANG_C_FATAL_ERROR_HANDLER_H
+#define LLVM_CLANG_C_FATAL_ERROR_HANDLER_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * Installs error handler that prints error message to stderr and calls abort().
+ * Replaces currently installed error handler (if any).
+ */
+void clang_install_aborting_llvm_fatal_error_handler(void);
+
+/**
+ * Removes currently installed error handler (if any).
+ * If no error handler is intalled, the default strategy is to print error
+ * message to stderr and call exit(1).
+ */
+void clang_uninstall_llvm_fatal_error_handler(void);
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang-c/Index.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang-c/Index.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang-c/Index.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -1356,7 +1356,12 @@ enum CXTranslationUnit_Flags {
    * the case where these warnings are not of interest, as for an IDE for
    * example, which typically shows only the diagnostics in the main file.
    */
-  CXTranslationUnit_IgnoreNonErrorsFromIncludedFiles = 0x4000
+  CXTranslationUnit_IgnoreNonErrorsFromIncludedFiles = 0x4000,
+
+  /**
+   * Tells the preprocessor not to skip excluded conditional blocks.
+   */
+  CXTranslationUnit_RetainExcludedConditionalBlocks = 0x8000
 };
 
 /**
@@ -2550,7 +2555,20 @@ enum CXCursorKind {
    */
   CXCursor_BuiltinBitCastExpr = 280,
 
-  CXCursor_LastStmt = CXCursor_BuiltinBitCastExpr,
+  /** OpenMP master taskloop directive.
+   */
+  CXCursor_OMPMasterTaskLoopDirective = 281,
+
+  /** OpenMP parallel master taskloop directive.
+   */
+  CXCursor_OMPParallelMasterTaskLoopDirective = 282,
+
+  /** OpenMP master taskloop simd directive.
+   */
+  CXCursor_OMPMasterTaskLoopSimdDirective      = 283,
+
+
+  CXCursor_LastStmt = CXCursor_OMPMasterTaskLoopSimdDirective,
 
   /**
    * Cursor that represents the translation unit itself.

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/APValue.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/APValue.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/APValue.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -53,6 +53,34 @@ class TypeInfoLValue { (public)
 
   void print(llvm::raw_ostream &Out, const PrintingPolicy &Policy) const;
 };
+
+/// Symbolic representation of a dynamic allocation.
+class DynamicAllocLValue {
+  unsigned Index;
+
+public:
+  DynamicAllocLValue() : Index(0) {}
+  explicit DynamicAllocLValue(unsigned Index) : Index(Index + 1) {}
+  unsigned getIndex() { return Index - 1; }
+
+  explicit operator bool() const { return Index != 0; }
+
+  void *getOpaqueValue() {
+    return reinterpret_cast<void *>(static_cast<uintptr_t>(Index)
+                                    << NumLowBitsAvailable);
+  }
+  static DynamicAllocLValue getFromOpaqueValue(void *Value) {
+    DynamicAllocLValue V;
+    V.Index = reinterpret_cast<uintptr_t>(Value) >> NumLowBitsAvailable;
+    return V;
+  }
+
+  static unsigned getMaxIndex() {
+    return (std::numeric_limits<unsigned>::max() >> NumLowBitsAvailable) - 1;
+  }
+
+  static constexpr int NumLowBitsAvailable = 3;
+};
 }
 
 namespace llvm {
@@ -67,6 +95,17 @@ template<> struct PointerLikeTypeTraits<clang::TypeInf
   // to include Type.h.
   static constexpr int NumLowBitsAvailable = 3;
 };
+
+template<> struct PointerLikeTypeTraits<clang::DynamicAllocLValue> {
+  static void *getAsVoidPointer(clang::DynamicAllocLValue V) {
+    return V.getOpaqueValue();
+  }
+  static clang::DynamicAllocLValue getFromVoidPointer(void *P) {
+    return clang::DynamicAllocLValue::getFromOpaqueValue(P);
+  }
+  static constexpr int NumLowBitsAvailable =
+      clang::DynamicAllocLValue::NumLowBitsAvailable;
+};
 }
 
 namespace clang {
@@ -97,13 +136,15 @@ class APValue { (public)
   };
 
   class LValueBase {
-    typedef llvm::PointerUnion<const ValueDecl *, const Expr *, TypeInfoLValue>
+    typedef llvm::PointerUnion<const ValueDecl *, const Expr *, TypeInfoLValue,
+                               DynamicAllocLValue>
         PtrTy;
 
   public:
     LValueBase() : Local{} {}
     LValueBase(const ValueDecl *P, unsigned I = 0, unsigned V = 0);
     LValueBase(const Expr *P, unsigned I = 0, unsigned V = 0);
+    static LValueBase getDynamicAlloc(DynamicAllocLValue LV, QualType Type);
     static LValueBase getTypeInfo(TypeInfoLValue LV, QualType TypeInfo);
 
     template <class T>
@@ -124,6 +165,7 @@ class APValue { (public)
     unsigned getCallIndex() const;
     unsigned getVersion() const;
     QualType getTypeInfoType() const;
+    QualType getDynamicAllocType() const;
 
     friend bool operator==(const LValueBase &LHS, const LValueBase &RHS);
     friend bool operator!=(const LValueBase &LHS, const LValueBase &RHS) {
@@ -140,6 +182,8 @@ class APValue { (public)
       LocalState Local;
       /// The type std::type_info, if this is a TypeInfoLValue.
       void *TypeInfoType;
+      /// The QualType, if this is a DynamicAllocLValue.
+      void *DynamicAllocType;
     };
   };
 

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTContext.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTContext.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTContext.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -139,6 +139,12 @@ class FullComment;
 
 } // namespace comments
 
+namespace interp {
+
+class Context;
+
+} // namespace interp
+
 struct TypeInfo {
   uint64_t Width = 0;
   unsigned Align = 0;
@@ -179,7 +185,8 @@ class ASTContext : public RefCountedBase<ASTContext> {
   mutable llvm::FoldingSet<LValueReferenceType> LValueReferenceTypes;
   mutable llvm::FoldingSet<RValueReferenceType> RValueReferenceTypes;
   mutable llvm::FoldingSet<MemberPointerType> MemberPointerTypes;
-  mutable llvm::FoldingSet<ConstantArrayType> ConstantArrayTypes;
+  mutable llvm::ContextualFoldingSet<ConstantArrayType, ASTContext &>
+      ConstantArrayTypes;
   mutable llvm::FoldingSet<IncompleteArrayType> IncompleteArrayTypes;
   mutable std::vector<VariableArrayType*> VariableArrayTypes;
   mutable llvm::FoldingSet<DependentSizedArrayType> DependentSizedArrayTypes;
@@ -507,6 +514,8 @@ class ASTContext : public RefCountedBase<ASTContext> {
   /// need to be consistently numbered for the mangler).
   llvm::DenseMap<const DeclContext *, std::unique_ptr<MangleNumberingContext>>
       MangleNumberingContexts;
+  llvm::DenseMap<const Decl *, std::unique_ptr<MangleNumberingContext>>
+      ExtraMangleNumberingContexts;
 
   /// Side-table of mangling numbers for declarations which rarely
   /// need them (like static local vars).
@@ -564,6 +573,7 @@ class ASTContext : public RefCountedBase<ASTContext> {
   const TargetInfo *Target = nullptr;
   const TargetInfo *AuxTarget = nullptr;
   clang::PrintingPolicy PrintingPolicy;
+  std::unique_ptr<interp::Context> InterpContext;
 
 public:
   IdentifierTable &Idents;
@@ -573,6 +583,9 @@ class ASTContext : public RefCountedBase<ASTContext> {
   IntrusiveRefCntPtr<ExternalASTSource> ExternalSource;
   ASTMutationListener *Listener = nullptr;
 
+  /// Returns the clang bytecode interpreter context.
+  interp::Context &getInterpContext();
+
   /// Container for either a single DynTypedNode or for an ArrayRef to
   /// DynTypedNode. For use with ParentMap.
   class DynTypedNodeList {
@@ -729,71 +742,49 @@ class ASTContext : public RefCountedBase<ASTContext> {
   /// True if comments are already loaded from ExternalASTSource.
   mutable bool CommentsLoaded = false;
 
-  class RawCommentAndCacheFlags {
-  public:
-    enum Kind {
-      /// We searched for a comment attached to the particular declaration, but
-      /// didn't find any.
-      ///
-      /// getRaw() == 0.
-      NoCommentInDecl = 0,
+  /// Mapping from declaration to directly attached comment.
+  ///
+  /// Raw comments are owned by Comments list.  This mapping is populated
+  /// lazily.
+  mutable llvm::DenseMap<const Decl *, const RawComment *> DeclRawComments;
 
-      /// We have found a comment attached to this particular declaration.
-      ///
-      /// getRaw() != 0.
-      FromDecl,
-
-      /// This declaration does not have an attached comment, and we have
-      /// searched the redeclaration chain.
-      ///
-      /// If getRaw() == 0, the whole redeclaration chain does not have any
-      /// comments.
-      ///
-      /// If getRaw() != 0, it is a comment propagated from other
-      /// redeclaration.
-      FromRedecl
-    };
-
-    Kind getKind() const LLVM_READONLY {
-      return Data.getInt();
-    }
-
-    void setKind(Kind K) {
-      Data.setInt(K);
-    }
-
-    const RawComment *getRaw() const LLVM_READONLY {
-      return Data.getPointer();
-    }
-
-    void setRaw(const RawComment *RC) {
-      Data.setPointer(RC);
-    }
-
-    const Decl *getOriginalDecl() const LLVM_READONLY {
-      return OriginalDecl;
-    }
-
-    void setOriginalDecl(const Decl *Orig) {
-      OriginalDecl = Orig;
-    }
-
-  private:
-    llvm::PointerIntPair<const RawComment *, 2, Kind> Data;
-    const Decl *OriginalDecl;
-  };
-
-  /// Mapping from declarations to comments attached to any
-  /// redeclaration.
+  /// Mapping from canonical declaration to the first redeclaration in chain
+  /// that has a comment attached.
   ///
   /// Raw comments are owned by Comments list.  This mapping is populated
   /// lazily.
-  mutable llvm::DenseMap<const Decl *, RawCommentAndCacheFlags> RedeclComments;
+  mutable llvm::DenseMap<const Decl *, const Decl *> RedeclChainComments;
 
+  /// Keeps track of redeclaration chains that don't have any comment attached.
+  /// Mapping from canonical declaration to redeclaration chain that has no
+  /// comments attached to any redeclaration. Specifically it's mapping to
+  /// the last redeclaration we've checked.
+  ///
+  /// Shall not contain declarations that have comments attached to any
+  /// redeclaration in their chain.
+  mutable llvm::DenseMap<const Decl *, const Decl *> CommentlessRedeclChains;
+
   /// Mapping from declarations to parsed comments attached to any
   /// redeclaration.
   mutable llvm::DenseMap<const Decl *, comments::FullComment *> ParsedComments;
 
+  /// Attaches \p Comment to \p OriginalD and to its redeclaration chain
+  /// and removes the redeclaration chain from the set of commentless chains.
+  ///
+  /// Don't do anything if a comment has already been attached to \p OriginalD
+  /// or its redeclaration chain.
+  void cacheRawCommentForDecl(const Decl &OriginalD,
+                              const RawComment &Comment) const;
+
+  /// \returns searches \p CommentsInFile for doc comment for \p D.
+  ///
+  /// \p RepresentativeLocForDecl is used as a location for searching doc
+  /// comments. \p CommentsInFile is a mapping offset -> comment of files in the
+  /// same file where \p RepresentativeLocForDecl is.
+  RawComment *getRawCommentForDeclNoCacheImpl(
+      const Decl *D, const SourceLocation RepresentativeLocForDecl,
+      const std::map<unsigned, RawComment *> &CommentsInFile) const;
+
   /// Return the documentation comment attached to a given declaration,
   /// without looking into cache.
   RawComment *getRawCommentForDeclNoCache(const Decl *D) const;
@@ -818,6 +809,16 @@ class ASTContext : public RefCountedBase<ASTContext> {
   getRawCommentForAnyRedecl(const Decl *D,
                             const Decl **OriginalDecl = nullptr) const;
 
+  /// Searches existing comments for doc comments that should be attached to \p
+  /// Decls. If any doc comment is found, it is parsed.
+  ///
+  /// Requirement: All \p Decls are in the same file.
+  ///
+  /// If the last comment in the file is already attached we assume
+  /// there are not comments left to be attached to \p Decls.
+  void attachCommentsToJustParsedDecls(ArrayRef<Decl *> Decls,
+                                       const Preprocessor *PP);
+
   /// Return parsed documentation comment attached to a given declaration.
   /// Returns nullptr if no comment is attached.
   ///
@@ -1054,6 +1055,9 @@ class ASTContext : public RefCountedBase<ASTContext> {
 #define EXT_OPAQUE_TYPE(ExtType, Id, Ext) \
   CanQualType Id##Ty;
 #include "clang/Basic/OpenCLExtensionTypes.def"
+#define SVE_TYPE(Name, Id, SingletonId) \
+  CanQualType SingletonId;
+#include "clang/Basic/AArch64SVEACLETypes.def"
 
   // Types for deductions in C++0x [stmt.ranged]'s desugaring. Built on demand.
   mutable QualType AutoDeductTy;     // Deduction against 'auto'.
@@ -1329,6 +1333,7 @@ class ASTContext : public RefCountedBase<ASTContext> {
   /// Return the unique reference to the type for a constant array of
   /// the specified element type.
   QualType getConstantArrayType(QualType EltTy, const llvm::APInt &ArySize,
+                                const Expr *SizeExpr,
                                 ArrayType::ArraySizeModifier ASM,
                                 unsigned IndexTypeQuals) const;
 
@@ -1498,8 +1503,7 @@ class ASTContext : public RefCountedBase<ASTContext> {
                              bool isKindOf) const;
 
   QualType getObjCTypeParamType(const ObjCTypeParamDecl *Decl,
-                                ArrayRef<ObjCProtocolDecl *> protocols,
-                                QualType Canonical = QualType()) const;
+                                ArrayRef<ObjCProtocolDecl *> protocols) const;
 
   bool ObjCObjectAdoptsQTypeProtocols(QualType QT, ObjCInterfaceDecl *Decl);
 
@@ -2054,6 +2058,11 @@ class ASTContext : public RefCountedBase<ASTContext> {
   /// types.
   bool areCompatibleVectorTypes(QualType FirstVec, QualType SecondVec);
 
+  /// Return true if the type has been explicitly qualified with ObjC ownership.
+  /// A type may be implicitly qualified with ownership under ObjC ARC, and in
+  /// some cases the compiler treats these differently.
+  bool hasDirectOwnershipQualifier(QualType Ty) const;
+
   /// Return true if this is an \c NSObject object with its \c NSObject
   /// attribute set.
   static bool isObjCNSObjectType(QualType Ty) {
@@ -2577,10 +2586,12 @@ class ASTContext : public RefCountedBase<ASTContext> {
     return T == getObjCSelType();
   }
 
-  bool ObjCQualifiedIdTypesAreCompatible(QualType LHS, QualType RHS,
+  bool ObjCQualifiedIdTypesAreCompatible(const ObjCObjectPointerType *LHS,
+                                         const ObjCObjectPointerType *RHS,
                                          bool ForCompare);
 
-  bool ObjCQualifiedClassTypesAreCompatible(QualType LHS, QualType RHS);
+  bool ObjCQualifiedClassTypesAreCompatible(const ObjCObjectPointerType *LHS,
+                                            const ObjCObjectPointerType *RHS);
 
   // Check the safety of assignment from LHS to RHS
   bool canAssignObjCInterfaces(const ObjCObjectPointerType *LHSOPT,
@@ -2802,6 +2813,9 @@ class ASTContext : public RefCountedBase<ASTContext> {
   /// Retrieve the context for computing mangling numbers in the given
   /// DeclContext.
   MangleNumberingContext &getManglingNumberContext(const DeclContext *DC);
+  enum NeedExtraManglingDecl_t { NeedExtraManglingDecl };
+  MangleNumberingContext &getManglingNumberContext(NeedExtraManglingDecl_t,
+                                                   const Decl *D);
 
   std::unique_ptr<MangleNumberingContext> createMangleNumberingContext() const;
 

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTFwd.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTFwd.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTFwd.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -24,7 +24,7 @@ class Stmt;
 #include "clang/AST/StmtNodes.inc"
 class Type;
 #define TYPE(DERIVED, BASE) class DERIVED##Type;
-#include "clang/AST/TypeNodes.def"
+#include "clang/AST/TypeNodes.inc"
 class CXXCtorInitializer;
 
 } // end namespace clang

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTImporter.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTImporter.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTImporter.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -87,7 +87,11 @@ class TypeSourceInfo;
     using NonEquivalentDeclSet = llvm::DenseSet<std::pair<Decl *, Decl *>>;
     using ImportedCXXBaseSpecifierMap =
         llvm::DenseMap<const CXXBaseSpecifier *, CXXBaseSpecifier *>;
+    using FileIDImportHandlerType =
+        std::function<void(FileID /*ToID*/, FileID /*FromID*/)>;
 
+    enum class ODRHandlingType { Conservative, Liberal };
+
     // An ImportPath is the list of the AST nodes which we visit during an
     // Import call.
     // If node `A` depends on node `B` then the path contains an `A`->`B` edge.
@@ -210,6 +214,8 @@ class TypeSourceInfo;
     };
 
   private:
+    FileIDImportHandlerType FileIDImportHandler;
+
     std::shared_ptr<ASTImporterSharedState> SharedState = nullptr;
 
     /// The path which we go through during the import of a given AST node.
@@ -232,6 +238,8 @@ class TypeSourceInfo;
     /// Whether to perform a minimal import.
     bool Minimal;
 
+    ODRHandlingType ODRHandling;
+
     /// Whether the last diagnostic came from the "from" context.
     bool LastDiagFromFrom = false;
 
@@ -310,10 +318,20 @@ class TypeSourceInfo;
 
     virtual ~ASTImporter();
 
+    /// Set a callback function for FileID import handling.
+    /// The function is invoked when a FileID is imported from the From context.
+    /// The imported FileID in the To context and the original FileID in the
+    /// From context is passed to it.
+    void setFileIDImportHandler(FileIDImportHandlerType H) {
+      FileIDImportHandler = H;
+    }
+
     /// Whether the importer will perform a minimal import, creating
     /// to-be-completed forward declarations when possible.
     bool isMinimalImport() const { return Minimal; }
 
+    void setODRHandling(ODRHandlingType T) { ODRHandling = T; }
+
     /// \brief Import the given object, returns the result.
     ///
     /// \param To Import the object into this variable.
@@ -366,6 +384,20 @@ class TypeSourceInfo;
     /// imported. If it does not exist nullptr is returned.
     TranslationUnitDecl *GetFromTU(Decl *ToD);
 
+    /// Return the declaration in the "from" context from which the declaration
+    /// in the "to" context was imported. If it was not imported or of the wrong
+    /// type a null value is returned.
+    template <typename DeclT>
+    llvm::Optional<DeclT *> getImportedFromDecl(const DeclT *ToD) const {
+      auto FromI = ImportedFromDecls.find(ToD);
+      if (FromI == ImportedFromDecls.end())
+        return {};
+      auto *FromD = dyn_cast<DeclT>(FromI->second);
+      if (!FromD)
+        return {};
+      return FromD;
+    }
+
     /// Import the given declaration context from the "from"
     /// AST context into the "to" AST context.
     ///
@@ -491,12 +523,11 @@ class TypeSourceInfo;
     ///
     /// \param NumDecls the number of conflicting declarations in \p Decls.
     ///
-    /// \returns the name that the newly-imported declaration should have.
-    virtual DeclarationName HandleNameConflict(DeclarationName Name,
-                                               DeclContext *DC,
-                                               unsigned IDNS,
-                                               NamedDecl **Decls,
-                                               unsigned NumDecls);
+    /// \returns the name that the newly-imported declaration should have. Or
+    /// an error if we can't handle the name conflict.
+    virtual Expected<DeclarationName>
+    HandleNameConflict(DeclarationName Name, DeclContext *DC, unsigned IDNS,
+                       NamedDecl **Decls, unsigned NumDecls);
 
     /// Retrieve the context that AST nodes are being imported into.
     ASTContext &getToContext() const { return ToContext; }

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTImporterSharedState.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTImporterSharedState.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTImporterSharedState.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -47,7 +47,7 @@ class ASTImporterSharedState { (public)
   ASTImporterSharedState() = default;
 
   ASTImporterSharedState(TranslationUnitDecl &ToTU) {
-    LookupTable = llvm::make_unique<ASTImporterLookupTable>(ToTU);
+    LookupTable = std::make_unique<ASTImporterLookupTable>(ToTU);
   }
 
   ASTImporterLookupTable *getLookupTable() { return LookupTable.get(); }

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTNodeTraverser.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTNodeTraverser.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTNodeTraverser.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -237,6 +237,9 @@ class ASTNodeTraverser (public)
 
     for (const auto &TP : *TPL)
       Visit(TP);
+
+    if (const Expr *RC = TPL->getRequiresClause())
+      Visit(RC);
   }
 
   void

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTStructuralEquivalence.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTStructuralEquivalence.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTStructuralEquivalence.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -18,7 +18,7 @@
 #include "llvm/ADT/DenseMap.h"
 #include "llvm/ADT/DenseSet.h"
 #include "llvm/ADT/Optional.h"
-#include <deque>
+#include <queue>
 #include <utility>
 
 namespace clang {
@@ -42,14 +42,13 @@ struct StructuralEquivalenceContext {
   /// AST contexts for which we are checking structural equivalence.
   ASTContext &FromCtx, &ToCtx;
 
-  /// The set of "tentative" equivalences between two canonical
-  /// declarations, mapping from a declaration in the first context to the
-  /// declaration in the second context that we believe to be equivalent.
-  llvm::DenseMap<Decl *, Decl *> TentativeEquivalences;
+  // Queue of from-to Decl pairs that are to be checked to determine the final
+  // result of equivalence of a starting Decl pair.
+  std::queue<std::pair<Decl *, Decl *>> DeclsToCheck;
 
-  /// Queue of declarations in the first context whose equivalence
-  /// with a declaration in the second context still needs to be verified.
-  std::deque<Decl *> DeclsToCheck;
+  // Set of from-to Decl pairs that are already visited during the check
+  // (are in or were once in \c DeclsToCheck) of a starting Decl pair.
+  llvm::DenseSet<std::pair<Decl *, Decl *>> VisitedDecls;
 
   /// Declaration (from, to) pairs that are known not to be equivalent
   /// (which we have already complained about).
@@ -88,14 +87,14 @@ struct StructuralEquivalenceContext {
   /// Implementation functions (all static functions in
   /// ASTStructuralEquivalence.cpp) must never call this function because that
   /// will wreak havoc the internal state (\c DeclsToCheck and
-  /// \c TentativeEquivalences members) and can cause faulty equivalent results.
+  /// \c VisitedDecls members) and can cause faulty equivalent results.
   bool IsEquivalent(Decl *D1, Decl *D2);
 
   /// Determine whether the two types are structurally equivalent.
   /// Implementation functions (all static functions in
   /// ASTStructuralEquivalence.cpp) must never call this function because that
   /// will wreak havoc the internal state (\c DeclsToCheck and
-  /// \c TentativeEquivalences members) and can cause faulty equivalent results.
+  /// \c VisitedDecls members) and can cause faulty equivalent results.
   bool IsEquivalent(QualType T1, QualType T2);
 
   /// Find the index of the given anonymous struct/union within its

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTTypeTraits.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTTypeTraits.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/ASTTypeTraits.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -148,7 +148,7 @@ class ASTNodeKind { (private)
 #include "clang/AST/StmtNodes.inc"
     NKI_Type,
 #define TYPE(DERIVED, BASE) NKI_##DERIVED##Type,
-#include "clang/AST/TypeNodes.def"
+#include "clang/AST/TypeNodes.inc"
     NKI_OMPClause,
 #define OPENMP_CLAUSE(TextualSpelling, Class) NKI_##Class,
 #include "clang/Basic/OpenMPKinds.def"
@@ -205,7 +205,7 @@ KIND_TO_KIND_ID(OMPClause)
 #define STMT(DERIVED, BASE) KIND_TO_KIND_ID(DERIVED)
 #include "clang/AST/StmtNodes.inc"
 #define TYPE(DERIVED, BASE) KIND_TO_KIND_ID(DERIVED##Type)
-#include "clang/AST/TypeNodes.def"
+#include "clang/AST/TypeNodes.inc"
 #define OPENMP_CLAUSE(TextualSpelling, Class) KIND_TO_KIND_ID(Class)
 #include "clang/Basic/OpenMPKinds.def"
 #undef KIND_TO_KIND_ID

Modified: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Attr.h
==============================================================================
--- projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Attr.h	Wed Jan 22 21:22:34 2020	(r356997)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/Attr.h	Wed Jan 22 21:31:48 2020	(r356998)
@@ -19,6 +19,7 @@
 #include "clang/AST/Expr.h"
 #include "clang/AST/Type.h"
 #include "clang/Basic/AttrKinds.h"
+#include "clang/Basic/AttributeCommonInfo.h"
 #include "clang/Basic/LLVM.h"
 #include "clang/Basic/OpenMPKinds.h"
 #include "clang/Basic/Sanitizers.h"
@@ -32,6 +33,7 @@
 
 namespace clang {
   class ASTContext;
+  class AttributeCommonInfo;
   class IdentifierInfo;
   class ObjCInterfaceDecl;
   class Expr;
@@ -40,84 +42,79 @@ namespace clang {
   class TypeSourceInfo;
 
 /// Attr - This represents one attribute.
-class Attr {
-private:
-  SourceRange Range;
-  unsigned AttrKind : 16;
+  class Attr : public AttributeCommonInfo {
+  private:
+    unsigned AttrKind : 16;
 
-protected:
-  /// An index into the spelling list of an
-  /// attribute defined in Attr.td file.
-  unsigned SpellingListIndex : 4;
-  unsigned Inherited : 1;
-  unsigned IsPackExpansion : 1;
-  unsigned Implicit : 1;
-  // FIXME: These are properties of the attribute kind, not state for this
-  // instance of the attribute.
-  unsigned IsLateParsed : 1;
-  unsigned InheritEvenIfAlreadyPresent : 1;
+  protected:
+    /// An index into the spelling list of an
+    /// attribute defined in Attr.td file.
+    unsigned Inherited : 1;
+    unsigned IsPackExpansion : 1;
+    unsigned Implicit : 1;
+    // FIXME: These are properties of the attribute kind, not state for this
+    // instance of the attribute.
+    unsigned IsLateParsed : 1;
+    unsigned InheritEvenIfAlreadyPresent : 1;
 
-  void *operator new(size_t bytes) noexcept {
-    llvm_unreachable("Attrs cannot be allocated with regular 'new'.");
-  }
-  void operator delete(void *data) noexcept {
-    llvm_unreachable("Attrs cannot be released with regular 'delete'.");
-  }
+    void *operator new(size_t bytes) noexcept {
+      llvm_unreachable("Attrs cannot be allocated with regular 'new'.");
+    }
+    void operator delete(void *data) noexcept {
+      llvm_unreachable("Attrs cannot be released with regular 'delete'.");
+    }
 
-public:
-  // Forward so that the regular new and delete do not hide global ones.
-  void *operator new(size_t Bytes, ASTContext &C,
-                     size_t Alignment = 8) noexcept {
-    return ::operator new(Bytes, C, Alignment);
-  }
-  void operator delete(void *Ptr, ASTContext &C, size_t Alignment) noexcept {
-    return ::operator delete(Ptr, C, Alignment);
-  }
+  public:
+    // Forward so that the regular new and delete do not hide global ones.
+    void *operator new(size_t Bytes, ASTContext &C,
+                       size_t Alignment = 8) noexcept {
+      return ::operator new(Bytes, C, Alignment);
+    }
+    void operator delete(void *Ptr, ASTContext &C, size_t Alignment) noexcept {
+      return ::operator delete(Ptr, C, Alignment);
+    }
 
-protected:
-  Attr(attr::Kind AK, SourceRange R, unsigned SpellingListIndex,
-       bool IsLateParsed)
-    : Range(R), AttrKind(AK), SpellingListIndex(SpellingListIndex),
-      Inherited(false), IsPackExpansion(false), Implicit(false),
-      IsLateParsed(IsLateParsed), InheritEvenIfAlreadyPresent(false) {}
+  protected:
+    Attr(ASTContext &Context, const AttributeCommonInfo &CommonInfo,
+         attr::Kind AK, bool IsLateParsed)
+        : AttributeCommonInfo(CommonInfo), AttrKind(AK), Inherited(false),
+          IsPackExpansion(false), Implicit(false), IsLateParsed(IsLateParsed),
+          InheritEvenIfAlreadyPresent(false) {}
 
-public:
+  public:
+    attr::Kind getKind() const { return static_cast<attr::Kind>(AttrKind); }
 
-  attr::Kind getKind() const {
-    return static_cast<attr::Kind>(AttrKind);
-  }
+    unsigned getSpellingListIndex() const {
+      return getAttributeSpellingListIndex();
+    }
+    const char *getSpelling() const;
 
-  unsigned getSpellingListIndex() const { return SpellingListIndex; }
-  const char *getSpelling() const;
+    SourceLocation getLocation() const { return getRange().getBegin(); }
 
-  SourceLocation getLocation() const { return Range.getBegin(); }
-  SourceRange getRange() const { return Range; }
-  void setRange(SourceRange R) { Range = R; }
+    bool isInherited() const { return Inherited; }
 
-  bool isInherited() const { return Inherited; }
+    /// Returns true if the attribute has been implicitly created instead
+    /// of explicitly written by the user.
+    bool isImplicit() const { return Implicit; }
+    void setImplicit(bool I) { Implicit = I; }
 
-  /// Returns true if the attribute has been implicitly created instead
-  /// of explicitly written by the user.
-  bool isImplicit() const { return Implicit; }
-  void setImplicit(bool I) { Implicit = I; }
+    void setPackExpansion(bool PE) { IsPackExpansion = PE; }
+    bool isPackExpansion() const { return IsPackExpansion; }
 
-  void setPackExpansion(bool PE) { IsPackExpansion = PE; }
-  bool isPackExpansion() const { return IsPackExpansion; }
+    // Clone this attribute.
+    Attr *clone(ASTContext &C) const;
 
-  // Clone this attribute.
-  Attr *clone(ASTContext &C) const;
+    bool isLateParsed() const { return IsLateParsed; }
 
-  bool isLateParsed() const { return IsLateParsed; }
+    // Pretty print this attribute.
+    void printPretty(raw_ostream &OS, const PrintingPolicy &Policy) const;
+  };
 
-  // Pretty print this attribute.
-  void printPretty(raw_ostream &OS, const PrintingPolicy &Policy) const;
-};
-
 class TypeAttr : public Attr {
 protected:
-  TypeAttr(attr::Kind AK, SourceRange R, unsigned SpellingListIndex,
-           bool IsLateParsed)
-      : Attr(AK, R, SpellingListIndex, IsLateParsed) {}
+  TypeAttr(ASTContext &Context, const AttributeCommonInfo &CommonInfo,
+           attr::Kind AK, bool IsLateParsed)
+      : Attr(Context, CommonInfo, AK, IsLateParsed) {}
 
 public:
   static bool classof(const Attr *A) {
@@ -128,9 +125,9 @@ class TypeAttr : public Attr { (public)
 
 class StmtAttr : public Attr {
 protected:
-  StmtAttr(attr::Kind AK, SourceRange R, unsigned SpellingListIndex,
-                  bool IsLateParsed)
-      : Attr(AK, R, SpellingListIndex, IsLateParsed) {}
+  StmtAttr(ASTContext &Context, const AttributeCommonInfo &CommonInfo,
+           attr::Kind AK, bool IsLateParsed)
+      : Attr(Context, CommonInfo, AK, IsLateParsed) {}
 
 public:
   static bool classof(const Attr *A) {
@@ -141,9 +138,10 @@ class StmtAttr : public Attr { (public)
 
 class InheritableAttr : public Attr {
 protected:
-  InheritableAttr(attr::Kind AK, SourceRange R, unsigned SpellingListIndex,
-                  bool IsLateParsed, bool InheritEvenIfAlreadyPresent)
-      : Attr(AK, R, SpellingListIndex, IsLateParsed) {
+  InheritableAttr(ASTContext &Context, const AttributeCommonInfo &CommonInfo,
+                  attr::Kind AK, bool IsLateParsed,
+                  bool InheritEvenIfAlreadyPresent)
+      : Attr(Context, CommonInfo, AK, IsLateParsed) {
     this->InheritEvenIfAlreadyPresent = InheritEvenIfAlreadyPresent;
   }
 
@@ -165,9 +163,10 @@ class InheritableAttr : public Attr { (public)
 
 class InheritableParamAttr : public InheritableAttr {
 protected:
-  InheritableParamAttr(attr::Kind AK, SourceRange R, unsigned SpellingListIndex,
+  InheritableParamAttr(ASTContext &Context,
+                       const AttributeCommonInfo &CommonInfo, attr::Kind AK,
                        bool IsLateParsed, bool InheritEvenIfAlreadyPresent)
-      : InheritableAttr(AK, R, SpellingListIndex, IsLateParsed,
+      : InheritableAttr(Context, CommonInfo, AK, IsLateParsed,
                         InheritEvenIfAlreadyPresent) {}
 
 public:
@@ -182,11 +181,11 @@ class InheritableParamAttr : public InheritableAttr { 
 /// for the parameter.
 class ParameterABIAttr : public InheritableParamAttr {
 protected:
-  ParameterABIAttr(attr::Kind AK, SourceRange R,
-                   unsigned SpellingListIndex, bool IsLateParsed,
+  ParameterABIAttr(ASTContext &Context, const AttributeCommonInfo &CommonInfo,
+                   attr::Kind AK, bool IsLateParsed,
                    bool InheritEvenIfAlreadyPresent)
-    : InheritableParamAttr(AK, R, SpellingListIndex, IsLateParsed,
-                           InheritEvenIfAlreadyPresent) {}
+      : InheritableParamAttr(Context, CommonInfo, AK, IsLateParsed,
+                             InheritEvenIfAlreadyPresent) {}
 
 public:
   ParameterABI getABI() const {

Copied: projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/CXXRecordDeclDefinitionBits.def (from r356992, vendor/clang/dist/include/clang/AST/CXXRecordDeclDefinitionBits.def)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/clang1000-import/contrib/llvm-project/clang/include/clang/AST/CXXRecordDeclDefinitionBits.def	Wed Jan 22 21:31:48 2020	(r356998, copy of r356992, vendor/clang/dist/include/clang/AST/CXXRecordDeclDefinitionBits.def)
@@ -0,0 +1,236 @@
+//===-- CXXRecordDeclDefinitionBits.def - Class definition bits -*- C++ -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+//
+// This file enumerates the various bitfields that we want to store on C++ class
+// definitions.
+//
+//===----------------------------------------------------------------------===//
+//
+/// @file CXXRecordDeclDefinitionBits.def
+///
+/// In this file, each of the bitfields representing data about a C++ class
+/// results in an expansion of the FIELD macro, which should be defined before
+/// including this file.
+///
+/// The macro have three operands:
+///
+/// Name: The name of the field, as a member of CXXRecordDecl::DefinitionData.
+///
+/// BitWidth: The width of the field in bits.
+///
+/// MergePolicy: How to behave when the value of the field is different in
+/// multiple translation units, one of:
+///   NO_MERGE: It is an ODR violation if the fields do not match.
+///   MERGE_OR: Merge the fields by ORing them together.
+
+#ifndef FIELD
+#error define FIELD before including this file
+#endif
+
+/// True if this class has any user-declared constructors.
+FIELD(UserDeclaredConstructor, 1, NO_MERGE)
+
+/// The user-declared special members which this class has.
+FIELD(UserDeclaredSpecialMembers, 6, NO_MERGE)
+
+/// True when this class is an aggregate.
+FIELD(Aggregate, 1, NO_MERGE)
+
+/// True when this class is a POD-type.
+FIELD(PlainOldData, 1, NO_MERGE)
+
+/// True when this class is empty for traits purposes, that is:
+///  * has no data members other than 0-width bit-fields and empty fields
+///    marked [[no_unique_address]]
+///  * has no virtual function/base, and
+///  * doesn't inherit from a non-empty class.
+/// Doesn't take union-ness into account.
+FIELD(Empty, 1, NO_MERGE)
+
+/// True when this class is polymorphic, i.e., has at
+/// least one virtual member or derives from a polymorphic class.
+FIELD(Polymorphic, 1, NO_MERGE)
+
+/// True when this class is abstract, i.e., has at least
+/// one pure virtual function, (that can come from a base class).
+FIELD(Abstract, 1, NO_MERGE)
+
+/// True when this class is standard-layout, per the applicable
+/// language rules (including DRs).
+FIELD(IsStandardLayout, 1, NO_MERGE)
+
+/// True when this class was standard-layout under the C++11
+/// definition.
+///
+/// C++11 [class]p7.  A standard-layout class is a class that:
+/// * has no non-static data members of type non-standard-layout class (or
+///   array of such types) or reference,
+/// * has no virtual functions (10.3) and no virtual base classes (10.1),
+/// * has the same access control (Clause 11) for all non-static data
+///   members
+/// * has no non-standard-layout base classes,
+/// * either has no non-static data members in the most derived class and at
+///   most one base class with non-static data members, or has no base
+///   classes with non-static data members, and
+/// * has no base classes of the same type as the first non-static data
+///   member.
+FIELD(IsCXX11StandardLayout, 1, NO_MERGE)
+
+/// True when any base class has any declared non-static data
+/// members or bit-fields.
+/// This is a helper bit of state used to implement IsStandardLayout more
+/// efficiently.
+FIELD(HasBasesWithFields, 1, NO_MERGE)
+
+/// True when any base class has any declared non-static data
+/// members.
+/// This is a helper bit of state used to implement IsCXX11StandardLayout
+/// more efficiently.
+FIELD(HasBasesWithNonStaticDataMembers, 1, NO_MERGE)
+
+/// True when there are private non-static data members.
+FIELD(HasPrivateFields, 1, NO_MERGE)
+
+/// True when there are protected non-static data members.
+FIELD(HasProtectedFields, 1, NO_MERGE)
+
+/// True when there are private non-static data members.
+FIELD(HasPublicFields, 1, NO_MERGE)
+
+/// True if this class (or any subobject) has mutable fields.
+FIELD(HasMutableFields, 1, NO_MERGE)
+
+/// True if this class (or any nested anonymous struct or union)
+/// has variant members.
+FIELD(HasVariantMembers, 1, NO_MERGE)
+
+/// True if there no non-field members declared by the user.
+FIELD(HasOnlyCMembers, 1, NO_MERGE)
+
+/// True if any field has an in-class initializer, including those
+/// within anonymous unions or structs.
+FIELD(HasInClassInitializer, 1, NO_MERGE)
+
+/// True if any field is of reference type, and does not have an
+/// in-class initializer.
+///
+/// In this case, value-initialization of this class is illegal in C++98
+/// even if the class has a trivial default constructor.
+FIELD(HasUninitializedReferenceMember, 1, NO_MERGE)
+
+/// True if any non-mutable field whose type doesn't have a user-
+/// provided default ctor also doesn't have an in-class initializer.
+FIELD(HasUninitializedFields, 1, NO_MERGE)
+
+/// True if there are any member using-declarations that inherit
+/// constructors from a base class.
+FIELD(HasInheritedConstructor, 1, NO_MERGE)
+
+/// True if there are any member using-declarations named
+/// 'operator='.
+FIELD(HasInheritedAssignment, 1, NO_MERGE)
+
+/// These flags are \c true if a defaulted corresponding special
+/// member can't be fully analyzed without performing overload resolution.
+/// @{
+FIELD(NeedOverloadResolutionForCopyConstructor, 1, NO_MERGE)
+FIELD(NeedOverloadResolutionForMoveConstructor, 1, NO_MERGE)
+FIELD(NeedOverloadResolutionForMoveAssignment, 1, NO_MERGE)
+FIELD(NeedOverloadResolutionForDestructor, 1, NO_MERGE)
+/// @}
+
+/// These flags are \c true if an implicit defaulted corresponding
+/// special member would be defined as deleted.
+/// @{
+FIELD(DefaultedCopyConstructorIsDeleted, 1, NO_MERGE)
+FIELD(DefaultedMoveConstructorIsDeleted, 1, NO_MERGE)
+FIELD(DefaultedMoveAssignmentIsDeleted, 1, NO_MERGE)
+FIELD(DefaultedDestructorIsDeleted, 1, NO_MERGE)
+/// @}
+
+/// The trivial special members which this class has, per
+/// C++11 [class.ctor]p5, C++11 [class.copy]p12, C++11 [class.copy]p25,
+/// C++11 [class.dtor]p5, or would have if the member were not suppressed.
+///
+/// This excludes any user-declared but not user-provided special members
+/// which have been declared but not yet defined.
+FIELD(HasTrivialSpecialMembers, 6, MERGE_OR)
+
+/// These bits keep track of the triviality of special functions for the
+/// purpose of calls. Only the bits corresponding to SMF_CopyConstructor,
+/// SMF_MoveConstructor, and SMF_Destructor are meaningful here.
+FIELD(HasTrivialSpecialMembersForCall, 6, MERGE_OR)
+
+/// The declared special members of this class which are known to be
+/// non-trivial.
+///
+/// This excludes any user-declared but not user-provided special members
+/// which have been declared but not yet defined, and any implicit special
+/// members which have not yet been declared.
+FIELD(DeclaredNonTrivialSpecialMembers, 6, MERGE_OR)
+
+/// These bits keep track of the declared special members that are
+/// non-trivial for the purpose of calls.
+/// Only the bits corresponding to SMF_CopyConstructor,
+/// SMF_MoveConstructor, and SMF_Destructor are meaningful here.
+FIELD(DeclaredNonTrivialSpecialMembersForCall, 6, MERGE_OR)
+
+/// True when this class has a destructor with no semantic effect.

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


More information about the svn-src-projects mailing list