[Issue 4269] New: invalid type accepted if evaluated while errors are gagged
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Jun 4 05:58:54 PDT 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4269
Summary: invalid type accepted if evaluated while errors are
gagged
Product: D
Version: unspecified
Platform: Other
OS/Version: Windows
Status: NEW
Keywords: accepts-invalid
Severity: normal
Priority: P2
Component: DMD
AssignedTo: nobody at puremagic.com
ReportedBy: r.sagitario at gmx.de
--- Comment #0 from Rainer Schuetze <r.sagitario at gmx.de> 2010-06-04 05:58:53 PDT ---
The D2 code (tried with DMD 2.042 and 2.046):
static if(__traits(compiles,A.sizeof)) pragma(msg, "A.sizeof compiles!");
class A
{
void foo(B b);
}
compiles without error with "dmd -c test.d" or even links if foo is made final.
This is caused by the error when evaluating B is muted while processing
__traits(compiles), but A is never revisited later.
A debug version of DMD outputs
ty = 37, '_error_'
assert glue.c(1059) 0
This can happen whenever globals.gag is non-zero, i.e. with speculative
semantic analysis.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list