www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 15257] New: __traits(compiles,=?UTF-8?Q?=20=E2=80=A6?=) with

https://issues.dlang.org/show_bug.cgi?id=15257

          Issue ID: 15257
           Summary: __traits(compiles, …) with malformed inline asm
                    silently ends compilation
           Product: D
           Version: D2
          Hardware: x86
                OS: Windows
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: cauterite gmail.com

https://ideone.com/5tn592

When DMD hits this:
    __traits(compiles, {
        asm {#$%^&*;}
    });
it runs asmerr(…) which is supposed to print the error ( verror(…) ) and
exit().
However, because __traits(compiles sets global.gag to 1, verror never prints
anything, so the compiler exits with no error message whatsoever.

--
Oct 29 2015