Skip to content

Commit

Permalink
Just put the definition for Registry head and tail back in source files
Browse files Browse the repository at this point in the history
  • Loading branch information
fsfod authored and vgvassilev committed Oct 15, 2024
1 parent 8f840c9 commit 5d9d904
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions llvm/include/llvm/Support/Registry.h
Original file line number Diff line number Diff line change
Expand Up @@ -137,20 +137,26 @@ namespace llvm {
};
};

template <typename T> typename Registry<T>::node *Registry<T>::Head = nullptr;
template <typename T> typename Registry<T>::node *Registry<T>::Tail = nullptr;
} // end namespace llvm

#ifdef _WIN32
/// Instantiate a registry class.
#define LLVM_INSTANTIATE_REGISTRY(REGISTRY_CLASS) \
namespace llvm { \
template <typename T> \
typename Registry<T>::node *Registry<T>::Head = nullptr; \
template <typename T> \
typename Registry<T>::node *Registry<T>::Tail = nullptr; \
template class LLVM_ABI_EXPORT Registry<REGISTRY_CLASS::type>; \
}
#else
#define LLVM_INSTANTIATE_REGISTRY(REGISTRY_CLASS) \
namespace llvm { \
template class Registry<REGISTRY_CLASS>; \
template <typename T> \
typename Registry<T>::node *Registry<T>::Head = nullptr; \
template <typename T> \
typename Registry<T>::node *Registry<T>::Tail = nullptr; \
template class Registry<REGISTRY_CLASS::type>; \
}
#endif

Expand Down

0 comments on commit 5d9d904

Please sign in to comment.