https://issues.dlang.org/show_bug.cgi?id=21294
--- Comment #4 from Iain Buclaw <[email protected]> --- (In reply to RazvanN from comment #3) > Which imports exactly are you referring to? It looks like a single import is the trigger over whether StringValue!Type is emitted or not. import dmd.dscope; Adding this back to dmd/aliasthis.d fixes the stage1 bootstrap. Currently running stage2 bootstrap. Without the import, this outputs nothing, and leaves undefined symbol references to StringValue!(Type).toDchars and others. $ gdc -fno-PIE -c -g -O2 -fversion=IN_GCC -frelease -fPIC -Wall -Wdeprecated -o d/mtype.o -MT d/mtype.o -MMD -MP -MF d/.deps/mtype.TPo -I../../gcc/d -J../../gcc/d/dmd -J../../gcc/d/dmd/res ../../gcc/d/dmd/mtype.d -v 2>&1 | grep StringValue $ nm d/mtype.o | grep StringValue8toDchars U _D3dmd4root11stringtable34__T11StringValueTC3dmd5mtype4TypeZ11StringValue8toDcharsMxFNaNbNiNjZPxa With the import however. $ gdc -fno-PIE -c -g -O2 -fversion=IN_GCC -frelease -fPIC -Wall -Wdeprecated -o d/mtype.o -MT d/mtype.o -MMD -MP -MF d/.deps/mtype.TPo -I../../gcc/d -J../../gcc/d/dmd -J../../gcc/d/dmd/res ../../gcc/d/dmd/mtype.d -v 2>&1 | grep StringValue function dmd.root.stringtable.StringValue!(Type).StringValue.lstring function dmd.root.stringtable.StringValue!(Type).StringValue.len function dmd.root.stringtable.StringValue!(Type).StringValue.toDchars function dmd.root.stringtable.StringValue!(Type).StringValue.toString function dmd.root.stringtable.StringValue!(Type).StringValue.__xopEquals function dmd.root.stringtable.StringValue!(Type).StringValue.__xtoHash $ nm d/mtype.o | grep StringValue8toDchars 0000000000000000 W _D3dmd4root11stringtable34__T11StringValueTC3dmd5mtype4TypeZ11StringValue8toDcharsMxFNaNbNiNjZPxa --
