www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 2468] New: result type of AndAndExp and OrOrExp deduced incorrectly

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

           Summary: result type of AndAndExp and OrOrExp deduced incorrectly
           Product: D
           Version: 1.035
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Keywords: patch
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla digitalmars.com
        ReportedBy: kamm-removethis incasoftware.de


The spec says that "The result type of an OrOrExpression is bool, unless the
right operand has type void, when the result is type void."

However, in AndAndExp and OrOrExp::semantic, it says:
  if (e1->type->ty == Tvoid)
    type = Type::tvoid;

The second seems to be a typo and shoud say e2->type->ty. Thanks to wilsonk,
who found the bug that resulted from this in LDC and also provided the fix.


-- 
Nov 23 2008
parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=2468


bugzilla digitalmars.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED




------- Comment #1 from bugzilla digitalmars.com  2008-12-25 04:38 -------
Fixed dmd 1.038 amd 2.022


-- 
Dec 25 2008