www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 5796] New: ICE with pragma(msg, ...) after missing ';' in a template

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=5796

           Summary: ICE with pragma(msg, ...) after missing ';' in a
                    template
           Product: D
           Version: D2
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: kennytm gmail.com



When a 'pragma(msg, ...)' pragma has a missing comma, the subsequent
pragma(msg, ...) will result in a segfault.

------
template A(B) {
    pragma(msg, B)    // <-- missing ';'
    enum A = 0;
}
enum a = A!int;

pragma(msg, 0);
------

The error exists at least since 2.042 http://ideone.com/MVgnG, and still
persists in 2.052. The segfault is raised in 'ExpInitializer::semantic' in
'init.c':


Initializer *ExpInitializer::semantic(Scope *sc, Type *t)
{
    //printf("....
    exp = exp->semantic(sc);
    exp = resolveProperties(sc, exp);
    exp = exp->optimize(WANTvalue | WANTinterpret);
    Type *tb = t->toBasetype();                        // <-- this line

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Mar 30 2011
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=5796




Commit pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/ac69d4b9893725d0eb7f40002f73d0b280214b02


ICE bugs 5796 and 6720

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 30 2012
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=5796




Commit pushed to dmd-1.x at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/06b3b85c8f4e069d8a9a6224d155047ba83413c9
fix Issue 5796 - ICE with pragma(msg, ...) after missing ';' in a template

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 31 2012
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=5796


Walter Bright <bugzilla digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |bugzilla digitalmars.com
         Resolution|                            |FIXED


-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 31 2012