https://issues.dlang.org/show_bug.cgi?id=13172
Ivan Kazmenko <ga...@mail.ru> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ga...@mail.ru --- Comment #4 from Ivan Kazmenko <ga...@mail.ru> --- I got that bug, too. I have a small family of examples here. -----example1.d:OK----- import std.stdio; void main () { ubyte [256] buf; stdin.rawRead (buf); } ----- -----example2.d:Fails with -inline----- import std.stdio; void main () { ushort [256] buf; // same with uint stdin.rawRead (buf); } ----- Checked with DMD 2.064.2, DMD 2.065.0 and DMD 2.066-0-b6, the results are roughly the same. Example 1 is OK. In example 2, certain optimizations lead to linker errors. To compile successfully, just run "dmd <file>.d". For versions 2.064 and 2.066, just adding "-inline" causes a linker error. For 2.065, the error requires the full "-release -inline -noboundscheck" to be reproduced locally. -----With "-m32" (OPTLINK):----- OPTLINK (R) for Win32 Release 8.00.15 Copyright (C) Digital Mars 1989-2013 All rights reserved. http://www.digitalmars.com/ctg/optlink.html example2.obj(example2) Error 42: Symbol Undefined _D3std9exception140__T12errnoEnforceTbVAyaa53_433a5c546f6f6c735c646d645c77696e646f77735c62696e5cE611F934D2BE6B410FCD651C953DEFB1 --- errorlevel 1 ----- -----With "-m64" (MS VS 12.0 linker):----- example2.obj : error LNK2019: unresolved external symbol _D3std9exception140__T12errnoEnforceTbVAyaa53_433a5c546f6f6c735c646d645c77696e646f77735c62696e5c2e2e5c2e2e5c7372635c70686f626f735c7374645c737464696f2e64Vmi717Z12errnoEnforceFNfbLAyaZb referenced in function _D3std5stdio4File14__T7rawReadTtZ7rawReadMFAtZAt example2.exe : fatal error LNK1120: 1 unresolved externals --- errorlevel 1120 ----- --