Add extern template
declarations for common Signal
types
#1247
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Using
extern template
can have compile time and object file size benefits.There doesn't appear to be any measurable gain from this change. Compile times appear to be about the same. Object files are about the same size. I suspect we'd need a larger more complicated template class in order to see gains here.
I figure keep it around for a bit, see if we notice any difference, and if not maybe strip it out in the future. At the very least, having this as part of project history serves as some kind of documentation on how to do it. Maybe it will be more useful in the future.
Closes #1222
Related: