diff --git a/examples/PrintFunctionNames/PrintFunctionNames.exports b/examples/PrintFunctionNames/PrintFunctionNames.exports index 0ff590d30d7bba02d646e97e8ce6719f72d216f4..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 --- a/examples/PrintFunctionNames/PrintFunctionNames.exports +++ b/examples/PrintFunctionNames/PrintFunctionNames.exports @@ -1 +0,0 @@ -_ZN4llvm8Registry* diff --git a/include/clang/Frontend/FrontendPluginRegistry.h b/include/clang/Frontend/FrontendPluginRegistry.h index ec925adb01860846d9510de326c4296bbd11ba6f..49be495daa374908c66991fca32859c874e67280 100644 --- a/include/clang/Frontend/FrontendPluginRegistry.h +++ b/include/clang/Frontend/FrontendPluginRegistry.h @@ -13,6 +13,9 @@ #include "clang/Frontend/FrontendAction.h" #include "llvm/Support/Registry.h" +// Instantiated in FrontendAction.cpp. +extern template class llvm::Registry<clang::PluginASTAction>; + namespace clang { /// The frontend plugin registry. diff --git a/lib/Frontend/FrontendAction.cpp b/lib/Frontend/FrontendAction.cpp index c274ba71768cef353bef3c542de67a60fb30a87b..791017924d69e26f0da9f02f46acca121b52a1e2 100644 --- a/lib/Frontend/FrontendAction.cpp +++ b/lib/Frontend/FrontendAction.cpp @@ -32,6 +32,8 @@ #include <system_error> using namespace clang; +template class llvm::Registry<clang::PluginASTAction>; + namespace { class DelegatingDeserializationListener : public ASTDeserializationListener {