[Issue 6736] Regression(2.054): ICE (cgcod.c 1672) with alias this and certain structs

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Nov 3 21:17:46 PDT 2011


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


Kenji Hara <k.hara.pg at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|ICE (cgcod.c 1672) with     |Regression(2.054): ICE
                   |alias this and certain      |(cgcod.c 1672) with alias
                   |structs                     |this and certain structs
           Severity|normal                      |regression


--- Comment #2 from Kenji Hara <k.hara.pg at gmail.com> 2011-11-03 21:17:15 PDT ---
This is a regression of fixing bug 6546.

The expression c + c runs semantics with alias this expansion in this order:
BinExp::op_overload( c + c )
BinExp::op_overload( c.s2 + c )
BinExp::op_overload( c.s2 + s.s2 )  // no operator overloading
BinExp::typeCombine( c.s2 + s.s2 )  // 1
BinExp::typeCombine( c.s2 + c )     // 2
BinExp::typeCombine( c + c )        // 

And BinExp::typeCombine cause error only when both types of sides are same.
Therefore, typeCombine rejects #1, but not #2.

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