It seems to occur when std.conv and byLine are used in the same module. Here's another example which causes link issues: // cantlink.d int main() { import std.stdio; stdin.byLine().front(); return 0; } void f(char[] s) { import std.conv; to!int(s); } $ gdc cantlink.d If the 'char[]' is changed to a 'string', the problem disappears.