rnk added a comment. I'm interested in making clang do this, but I think this needs significantly more work until this is ready to land. It needs in-tree tests. I assumed we'd want to hook it up to `clang-cl /Yc` and `/Yu`.
================ Comment at: clang/include/clang/Basic/LangOptions.def:163 BENIGN_LANGOPT(CacheGeneratedPCH, 1, 0, "cache generated PCH files in memory") +BENIGN_LANGOPT(PCHInstantiateTemplates, 1, 0, "performing pending template instantiations already while building a pch") COMPATIBLE_LANGOPT(ModulesDeclUse , 1, 0, "require declaration of module uses") ---------------- I think both sides of a PCH user and creator will need to agree on this, so this isn't a "benign" langopt, is it? This is a regular one, and we should diagnose mismatches between the PCH creation and use. ================ Comment at: clang/lib/Sema/Sema.cpp:985-986 + + // FIXME: Instantiating implicit templates already in the PCH breaks some + // OpenMP-specific code paths, see https://reviews.llvm.org/D69585 . + if(LangOpts.PCHInstantiateTemplates && !LangOpts.OpenMP) { ---------------- This really deserves to be debugged before we land it. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69585/new/ https://reviews.llvm.org/D69585 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits