Index: include/clang/Lex/HeaderSearchOptions.h =================================================================== --- include/clang/Lex/HeaderSearchOptions.h +++ include/clang/Lex/HeaderSearchOptions.h @@ -16,6 +16,7 @@ #include "llvm/ADT/StringRef.h" #include #include +#include namespace clang { @@ -141,7 +142,8 @@ /// \brief The set of macro names that should be ignored for the purposes /// of computing the module hash. - llvm::SetVector ModulesIgnoreMacros; + llvm::SetVector, std::set> + ModulesIgnoreMacros; /// \brief The set of user-provided virtual filesystem overlay files. std::vector VFSOverlayFiles; Index: include/clang/Sema/Sema.h =================================================================== --- include/clang/Sema/Sema.h +++ include/clang/Sema/Sema.h @@ -52,6 +52,7 @@ #include #include #include +#include namespace llvm { class APSInt; @@ -979,7 +980,8 @@ /// The C++ special members which we are currently in the process of /// declaring. If this process recursively triggers the declaration of the /// same special member, we should act as if it is not yet declared. - llvm::SmallSet SpecialMembersBeingDeclared; + llvm::SmallSet> + SpecialMembersBeingDeclared; void ReadMethodPool(Selector Sel); @@ -6842,7 +6844,7 @@ /// \brief The number of typos corrected by CorrectTypo. unsigned TyposCorrected; - typedef llvm::SmallSet SrcLocSet; + typedef llvm::SmallSet> SrcLocSet; typedef llvm::DenseMap IdentifierSourceLocations; /// \brief A cache containing identifiers for which typo correction failed and Index: lib/AST/VTableBuilder.cpp =================================================================== --- lib/AST/VTableBuilder.cpp +++ lib/AST/VTableBuilder.cpp @@ -23,6 +23,7 @@ #include "llvm/Support/raw_ostream.h" #include #include +#include using namespace clang; Index: lib/CodeGen/CGObjCMac.cpp =================================================================== --- lib/CodeGen/CGObjCMac.cpp +++ lib/CodeGen/CGObjCMac.cpp @@ -37,6 +37,7 @@ #include "llvm/IR/Module.h" #include "llvm/Support/raw_ostream.h" #include +#include using namespace clang; using namespace CodeGen; @@ -833,7 +834,8 @@ llvm::DenseMap MethodVarNames; /// DefinedCategoryNames - list of category names in form Class_Category. - llvm::SetVector DefinedCategoryNames; + llvm::SetVector, std::set> + DefinedCategoryNames; /// MethodVarTypes - uniqued method type signatures. We have to use /// a StringMap here because have no other unique reference. Index: lib/CodeGen/CoverageMappingGen.cpp =================================================================== --- lib/CodeGen/CoverageMappingGen.cpp +++ lib/CodeGen/CoverageMappingGen.cpp @@ -21,6 +21,7 @@ #include "llvm/ProfileData/CoverageMappingWriter.h" #include "llvm/ProfileData/InstrProfReader.h" #include "llvm/Support/FileSystem.h" +#include using namespace clang; using namespace CodeGen; @@ -483,7 +484,7 @@ ParentFile = SM.getFileID(LCA); } - llvm::SmallSet StartLocs; + llvm::SmallSet> StartLocs; Optional ParentCounter; for (SourceMappingRegion &I : llvm::reverse(RegionStack)) { if (!I.hasStartLoc()) Index: lib/Driver/Tools.cpp =================================================================== --- lib/Driver/Tools.cpp +++ lib/Driver/Tools.cpp @@ -6224,7 +6224,7 @@ std::string Linker = getToolChain().GetProgramPath(getShortName()); ArgStringList CmdArgs; CmdArgs.push_back("-flavor"); - CmdArgs.push_back("gnu"); + CmdArgs.push_back("old-gnu"); CmdArgs.push_back("-target"); CmdArgs.push_back(Args.MakeArgString(getToolChain().getTripleString())); AddLinkerInputs(getToolChain(), Inputs, Args, CmdArgs); @@ -8477,7 +8477,7 @@ if (llvm::sys::path::filename(ToolChain.Linker) == "lld") { CmdArgs.push_back("-flavor"); - CmdArgs.push_back("gnu"); + CmdArgs.push_back("old-gnu"); CmdArgs.push_back("-target"); CmdArgs.push_back(Args.MakeArgString(getToolChain().getTripleString())); } @@ -9467,7 +9467,7 @@ StringRef LinkerName = Args.getLastArgValue(options::OPT_fuse_ld_EQ, "ld"); if (LinkerName.equals_lower("lld")) { CmdArgs.push_back("-flavor"); - CmdArgs.push_back("gnu"); + CmdArgs.push_back("old-gnu"); } if (!D.SysRoot.empty()) Index: test/Driver/amdgpu-toolchain.c =================================================================== --- test/Driver/amdgpu-toolchain.c +++ test/Driver/amdgpu-toolchain.c @@ -1,3 +1,3 @@ // RUN: %clang -### -target amdgcn--amdhsa -x assembler -mcpu=kaveri %s 2>&1 | FileCheck -check-prefix=AS_LINK %s // AS_LINK: clang{{.*}} "-cc1as" -// AS_LINK: lld{{.*}} "-flavor" "gnu" "-target" "amdgcn--amdhsa" +// AS_LINK: lld{{.*}} "-flavor" "old-gnu" "-target" "amdgcn--amdhsa" Index: test/Driver/mingw-useld.c =================================================================== --- test/Driver/mingw-useld.c +++ test/Driver/mingw-useld.c @@ -1,10 +1,10 @@ // RUN: %clang -### -target i686-pc-windows-gnu --sysroot=%S/Inputs/mingw_clang_tree/mingw32 %s 2>&1 | FileCheck -check-prefix=CHECK_LD_32 %s // CHECK_LD_32: {{ld|ld.exe}}" // CHECK_LD_32: "i386pe" -// CHECK_LD_32_NOT: "-flavor" "gnu" +// CHECK_LD_32_NOT: "-flavor" "old-gnu" // RUN: %clang -### -target i686-pc-windows-gnu --sysroot=%S/Inputs/mingw_clang_tree/mingw32 %s -fuse-ld=lld 2>&1 | FileCheck -check-prefix=CHECK_LLD_32 %s -// CHECK_LLD_32: lld" "-flavor" "gnu" +// CHECK_LLD_32: lld" "-flavor" "old-gnu" // CHECK_LLD_32: "i386pe" // RUN: %clang -### -target i686-pc-windows-gnu --sysroot=%S/Inputs/mingw_clang_tree/mingw32 %s -fuse-ld=link.exe 2>&1 | FileCheck -check-prefix=CHECK_LINK_32 %s @@ -12,9 +12,9 @@ // CHECK_LINK_32: "i386pe" // RUN: %clang -### -target x86_64-pc-windows-gnu --sysroot=%S/Inputs/mingw_clang_tree/mingw32 %s -fuse-ld=lld 2>&1 | FileCheck -check-prefix=CHECK_LLD_64 %s -// CHECK_LLD_64: lld" "-flavor" "gnu" +// CHECK_LLD_64: lld" "-flavor" "old-gnu" // CHECK_LLD_64: "i386pep" // RUN: %clang -### -target arm-pc-windows-gnu --sysroot=%S/Inputs/mingw_clang_tree/mingw32 %s -fuse-ld=lld 2>&1 | FileCheck -check-prefix=CHECK_LLD_ARM %s -// CHECK_LLD_ARM: lld" "-flavor" "gnu" +// CHECK_LLD_ARM: lld" "-flavor" "old-gnu" // CHECK_LLD_ARM: "thumb2pe" Index: test/Driver/mips-mti-linux.c =================================================================== --- test/Driver/mips-mti-linux.c +++ test/Driver/mips-mti-linux.c @@ -14,7 +14,7 @@ // CHECK-BE-HF-32R2: "{{[^"]*}}clang{{[^"]*}}" {{.*}} "-triple" "mips-mti-linux" // CHECK-BE-HF-32R2-SAME: "-fuse-init-array" "-target-cpu" "mips32r2" // CHECK-BE-HF-32R2-SAME: "-isysroot" "{{.*}}mips_mti_linux/sysroot" -// CHECK-BE-HF-32R2: "{{[^"]*}}lld{{[^"]*}}" "-flavor" "gnu" "-target" "mips-mti-linux" +// CHECK-BE-HF-32R2: "{{[^"]*}}lld{{[^"]*}}" "-flavor" "old-gnu" "-target" "mips-mti-linux" // CHECK-BE-HF-32R2-SAME: "--sysroot=[[SYSROOT:[^"]+]]" {{.*}} "-dynamic-linker" "/lib/ld-musl-mips.so.1" // CHECK-BE-HF-32R2-SAME: "[[SYSROOT]]/mips-r2-hard-musl/usr/lib{{/|\\\\}}crt1.o" // CHECK-BE-HF-32R2-SAME: "[[SYSROOT]]/mips-r2-hard-musl/usr/lib{{/|\\\\}}crti.o" @@ -32,7 +32,7 @@ // CHECK-LE-HF-32R2: "{{[^"]*}}clang{{[^"]*}}" {{.*}} "-triple" "mipsel-mti-linux" // CHECK-LE-HF-32R2-SAME: "-fuse-init-array" "-target-cpu" "mips32r2" // CHECK-LE-HF-32R2-SAME: "-isysroot" "{{.*}}mips_mti_linux/sysroot" -// CHECK-LE-HF-32R2: "{{[^"]*}}lld{{[^"]*}}" "-flavor" "gnu" "-target" "mipsel-mti-linux" +// CHECK-LE-HF-32R2: "{{[^"]*}}lld{{[^"]*}}" "-flavor" "old-gnu" "-target" "mipsel-mti-linux" // CHECK-LE-HF-32R2-SAME: "--sysroot=[[SYSROOT:[^"]+]]" {{.*}} "-dynamic-linker" "/lib/ld-musl-mipsel.so.1" // CHECK-LE-HF-32R2-SAME: "[[SYSROOT]]/mipsel-r2-hard-musl/usr/lib{{/|\\\\}}crt1.o" // CHECK-LE-HF-32R2-SAME: "[[SYSROOT]]/mipsel-r2-hard-musl/usr/lib{{/|\\\\}}crti.o" Index: utils/TableGen/NeonEmitter.cpp =================================================================== --- utils/TableGen/NeonEmitter.cpp +++ utils/TableGen/NeonEmitter.cpp @@ -41,6 +41,7 @@ #include #include #include +#include using namespace llvm; namespace {