================ @@ -1906,6 +1906,36 @@ class Sema final : public SemaBase { ActOnPragmaMSFunction(SourceLocation Loc, const llvm::SmallVectorImpl<StringRef> &NoBuiltins); + /// A label from a C++ #pragma export, for a symbol that we + /// haven't seen the declaration for yet. The TypeList is the argument list + /// the function must match if HasTypeList is true. + struct SymbolLabel { + std::optional<SmallVector<QualType, 4>> TypeList; + StringRef MappedName; + SourceLocation NameLoc; + bool HasTypeList; + Qualifiers CVQual; + }; + + typedef SmallVector<SymbolLabel, 1> PendingSymbolOverloads; + typedef llvm::DenseMap<NestedNameSpecifier *, PendingSymbolOverloads> + SymbolNames; + SymbolNames PendingExportNames; + + FunctionDecl *tryFunctionLookUp(NestedNameSpecifier *NestedName, ---------------- perry-ca wrote:
This is used by another pragma I'm going to upstream next. This isn't used by pragma export but it is used by other pragmas we'll upstream after this one. I missed this when removing all of that code and can remove it for now if you wish. https://github.com/llvm/llvm-project/pull/111035 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits