[Issue 11724] D sends failed template instantiations to object file
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Wed Dec 11 08:10:33 PST 2013
https://d.puremagic.com/issues/show_bug.cgi?id=11724
--- Comment #4 from Iain Buclaw <ibuclaw at ubuntu.com> 2013-12-11 08:10:23 PST ---
(In reply to comment #1)
> Actually, the functions pass semantic just fine.
Yeah... I cracked open a debugger after raising this and realised the same.
Fails compilation in CallExp::semantic, *after* it has been added to the module
members list.
I poked about with omitting declared members when __traits(compiles) fails,
then omitting from within SCOPEstaticassert - but it seems that in both cases
causes *needed* symbols to be skipped leading to undefined symbol linker
errors. Though I'm not immediately sure why symbols instantiated from static
assert() or __traits(compiles) would be needed, unless of course my poking
about was all wrong and had the adverse effect of:
static if (__traits(compiles, foo!double())) // instantiated and discarded.
{
return foo!double(); // instantiated, but not added to members.
}
--
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list