Thread overview
[Issue 555] New: Integral ireal literals can't be specified
Nov 18, 2006
d-bugmail
Nov 18, 2006
d-bugmail
Nov 25, 2006
Thomas Kuehne
Dec 03, 2006
d-bugmail
November 18, 2006
http://d.puremagic.com/issues/show_bug.cgi?id=555

           Summary: Integral ireal literals can't be specified
           Product: D
           Version: 0.174
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Severity: minor
          Priority: P3
         Component: DMD
        AssignedTo: bugzilla@digitalmars.com
        ReportedBy: deewiant@gmail.com


ireal x = 4.Li; // works
ireal y = 4.0Li; // works
ireal z = 4Li; // fails

asdf.d(3): semicolon expected, not 'i'
asdf.d(3): no identifier for declarator i

Or:

creal x = 2L + 4.Li; // works
creal y = 3L + 4.0Li; // works
creal z = 4L + 4Li; // fails

Which shows the discrepancy - the real numbers work, but the imaginary fails.

Not that important, since you can just write 4i, but it seems inconsistent since you can write both 123.456i and 123.456Li, but not 123456i and 123456Li.


-- 

November 18, 2006
http://d.puremagic.com/issues/show_bug.cgi?id=555


deewiant@gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |rejects-valid




------- Comment #1 from deewiant@gmail.com  2006-11-18 11:03 -------
I'm now practically certain that this is a bug, since these all work:

ifloat x = 6.0fi;
ifloat y = 6.fi;
ifloat z = 6fi;


-- 

November 25, 2006
d-bugmail@puremagic.com schrieb am 2006-11-18:
> http://d.puremagic.com/issues/show_bug.cgi?id=555

> ireal x = 4.Li; // works
> ireal y = 4.0Li; // works
> ireal z = 4Li; // fails
>
> asdf.d(3): semicolon expected, not 'i'
> asdf.d(3): no identifier for declarator i
>
> Or:
>
> creal x = 2L + 4.Li; // works
> creal y = 3L + 4.0Li; // works
> creal z = 4L + 4Li; // fails
>
> Which shows the discrepancy - the real numbers work, but the imaginary fails.
>
> Not that important, since you can just write 4i, but it seems inconsistent since you can write both 123.456i and 123.456Li, but not 123456i and 123456Li.

Added to DStress as http://dstress.kuehne.cn/compile/f/float_literal_dec_18_A.d http://dstress.kuehne.cn/compile/f/float_literal_dec_18_B.d http://dstress.kuehne.cn/compile/f/float_literal_dec_18_C.d http://dstress.kuehne.cn/compile/f/float_literal_dec_18_D.d http://dstress.kuehne.cn/compile/f/float_literal_dec_18_E.d http://dstress.kuehne.cn/compile/f/float_literal_dec_18_F.d

Thomas


December 03, 2006
http://d.puremagic.com/issues/show_bug.cgi?id=555


deewiant@gmail.com changed:

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




------- Comment #3 from deewiant@gmail.com  2006-12-03 03:39 -------
Fixed in DMD 0.176.


--