diff --git a/lib/Frontend/FrontendAction.cpp b/lib/Frontend/FrontendAction.cpp
index 42da44c..ba69123 100644
--- a/lib/Frontend/FrontendAction.cpp
+++ b/lib/Frontend/FrontendAction.cpp
@@ -381,3 +381,21 @@ PreprocessorFrontendAction::CreateASTConsumer(CompilerInstance &CI,
                                               llvm::StringRef InFile) {
   llvm_unreachable("Invalid CreateASTConsumer on preprocessor action!");
 }
+
+// where to put this?
+template <>
+llvm::Registry<clang::PluginASTAction,llvm::RegistryTraits<clang::PluginASTAction> >::node*
+  llvm::Registry<clang::PluginASTAction,llvm::RegistryTraits<clang::PluginASTAction> >::Head;
+
+template <>
+llvm::Registry<clang::PluginASTAction,llvm::RegistryTraits<clang::PluginASTAction> >::node*
+  llvm::Registry<clang::PluginASTAction,llvm::RegistryTraits<clang::PluginASTAction> >::Tail;
+
+template <>
+llvm::Registry<clang::PluginASTAction,llvm::RegistryTraits<clang::PluginASTAction> >::listener*
+  llvm::Registry<clang::PluginASTAction,llvm::RegistryTraits<clang::PluginASTAction> >::ListenerHead;
+
+template <>
+llvm::Registry<clang::PluginASTAction,llvm::RegistryTraits<clang::PluginASTAction> >::listener*
+  llvm::Registry<clang::PluginASTAction,llvm::RegistryTraits<clang::PluginASTAction> >::ListenerTail;
+//
\ No newline at end of file
