diff options
author | Hans Wennborg <hans@hanshq.net> | 2015-01-10 01:19:48 +0000 |
---|---|---|
committer | Hans Wennborg <hans@hanshq.net> | 2015-01-10 01:19:48 +0000 |
commit | 43a0f99b103dc9c2546e650b99f5501e49e74dd2 (patch) | |
tree | 684a9d97c788f0d4ac39151128de445cd17530c4 /clang/lib/Sema/SemaInit.cpp | |
parent | 7c8a7251162d7e5db51e3ff7350a186fc749cee6 (diff) | |
download | bcm5719-llvm-43a0f99b103dc9c2546e650b99f5501e49e74dd2.tar.gz bcm5719-llvm-43a0f99b103dc9c2546e650b99f5501e49e74dd2.zip |
Don't emit implicit template instantiations eagerly (PR21718)
Their linkage can change if they are later explicitly instantiated. We would
previously emit such functions eagerly (as opposed to lazily on first use) if
they have a 'dllexport' or 'used' attribute, and fail an assert when hitting the
explicit instantiation.
This is achieved by replacing the old CodeGenModule::MayDeferGeneration() method
with two new ones: MustBeEmitted() and MayBeEmittedEagerly().
Differential Revision: http://reviews.llvm.org/D6674
llvm-svn: 225570
Diffstat (limited to 'clang/lib/Sema/SemaInit.cpp')
0 files changed, 0 insertions, 0 deletions