digitalmars.D.bugs - [Issue 2734] New: Ambiguity in tokenizing: _._ as a float literal
- d-bugmail puremagic.com (32/32) Mar 15 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2734
- d-bugmail puremagic.com (16/16) Mar 29 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2734
- d-bugmail puremagic.com (12/12) Nov 09 2010 http://d.puremagic.com/issues/show_bug.cgi?id=2734
http://d.puremagic.com/issues/show_bug.cgi?id=2734
Summary: Ambiguity in tokenizing: _._ as a float literal
Product: D
Version: 2.025
Platform: PC
URL: http://www.digitalmars.com/d/1.0/lex.html
OS/Version: Linux
Status: NEW
Keywords: spec
Severity: normal
Priority: P2
Component: DMD
AssignedTo: bugzilla digitalmars.com
ReportedBy: dhasenan gmail.com
http://www.digitalmars.com/d/1.0/lex.html
http://www.digitalmars.com/d/2.0/lex.html
Under "Floating Literals", the spec says:
DecimalFloat -> DecimalDigits
DecimalFloat -> DecimalDigits . DecimalDigits
DecimalFloat -> . DecimalDigits
etc
DecimalDigits is defined as:
DecimalDigits -> DecimalDigit
DecimalDigits -> DecimalDigit DecimalDigits
DecimalDigit -> [0123456789_]
From this, we can derive:
DecimalFloat -> DecimalDigits . DecimalDigits
-> DecimalDigit . DecimalDigit
-> _ . _
To resolve the ambiguity, _ cannot be allowed as the first character in a
float, and it cannot be allowed as the first character after the decimal point.
--
Mar 15 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2734
unknown simplemachines.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |unknown simplemachines.org
It appears DMD 2.026 already works as you suggest; _1.0 is not recognized as a
valid float.
However, 1_._1 is, which doesn't seem ambiguous to me. Once you're after the .
and in a FloatLiteral, any characters in [_0-9] should be eaten to finish the
float literal.
The spec just needs to be corrected with a new rule that defines 0,
NonZeroDigit, and then a repeating of those with DecimalDigits (Decimal is
almost fine except its handling of octals.)
-[Unknown]
--
Mar 29 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2734
Walter Bright <bugzilla digitalmars.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |bugzilla digitalmars.com
Resolution| |FIXED
20:12:47 PST ---
http://www.dsource.org/projects/phobos/changeset/2150
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Nov 09 2010









d-bugmail puremagic.com 