[Issue 14050] New: `dmd -v` lists imports from failed __traits(compiles) blocks
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Mon Jan 26 06:50:55 PST 2015
https://issues.dlang.org/show_bug.cgi?id=14050
Issue ID: 14050
Summary: `dmd -v` lists imports from failed __traits(compiles)
blocks
Product: D
Version: unspecified
Hardware: All
OS: All
Status: NEW
Severity: major
Priority: P1
Component: DMD
Assignee: nobody at puremagic.com
Reporter: public at dicebot.lv
===
static if (__traits(compiles, { import missing; }))
{
pragma(msg, "importing missing");
import missing;
}
else
{
pragma(msg, "not importing missing");
}
/*
$ ./dmd/src/dmd -o- -v reduced.d
binary ./dmd/src/dmd
version v2.067-devel-6b86b12
config ./dmd/src/dmd.conf
parse reduced
importall reduced
import object (/home/dicebot/devel/dlang/druntime/src/object.di)
semantic reduced
import missing (missing.d)
not importing missing
semantic2 reduced
semantic3 reduced
*/
===
Note the "import missing (missing.d)" line. It makes all build tools that
use `dmd -v` output to try to find and compile that module which is, of course,
not possible.
Marking issue as major because it blocks merging of std.experimental.logger
(https://github.com/D-Programming-Language/phobos/pull/1500#issuecomment-71470893)
--
More information about the Digitalmars-d-bugs
mailing list