[Issue 4197] __error iso assert failure in struct function in/out statement

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Apr 28 13:16:20 PDT 2011


http://d.puremagic.com/issues/show_bug.cgi?id=4197


Don <clugdbug at yahoo.com.au> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-invalid-code
                 CC|                            |clugdbug at yahoo.com.au
            Version|unspecified                 |D1 & D2
         OS/Version|Windows                     |All
           Severity|normal                      |major


--- Comment #4 from Don <clugdbug at yahoo.com.au> 2011-04-28 13:12:33 PDT ---
Original title was:
"__error iso assert failure in struct function in/out statement"

A reduced test case shows it is a very general ICE.
*Any* error inside an in() or out() contract in a function that is has its
semantic run through CTFE, has all errors gagged. This can result in a cryptic
error message (as in the original test case), or an ICE. This one is
ICE(glue.c), but I've also seen ICE(toir.c). It fails on both D1 and D2.

const Bug4197 s4197 = Bug4197();

int func4197()
in { undefined; }
body { return 0; }

struct Bug4197 {
  static const int S2 = func4197();
}

-- 
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