Skip to content

Commit

Permalink
fix Issue 949 - Wrong spec/compiler behaviour for Strings, Integers a…
Browse files Browse the repository at this point in the history
…nd Floats
  • Loading branch information
WalterBright committed Jan 21, 2012
1 parent 1d2c121 commit 4e60a4f
Showing 1 changed file with 73 additions and 26 deletions.
99 changes: 73 additions & 26 deletions lex.dd
Original file line number Diff line number Diff line change
Expand Up @@ -612,18 +612,20 @@ $(GNAME IntegerSuffix):
$(GNAME DecimalInteger):
$(B 0)
$(GLINK NonZeroDigit)
$(GLINK NonZeroDigit) $(I DecimalDigits)
$(GLINK NonZeroDigit) $(I DecimalDigitsUS)

$(GNAME BinaryInteger):
$(B 0b) $(GLINK BinaryDigits)
$(B 0B) $(GLINK BinaryDigits)
$(GLINK BinPrefix) $(GLINK BinaryDigits)

$(GNAME BinPrefix):
$(B 0b)
$(B 0B)

$(V1 $(GNAME OctalInteger):
$(B 0) $(GLINK OctalDigits)
$(B 0) $(GLINK OctalDigitsUS)

)$(GNAME HexadecimalInteger):
$(B 0x) $(GLINK HexDigits)
$(B 0X) $(GLINK HexDigits)
$(GLINK HexPrefix) $(GLINK HexDigitsNoSingleUS)

$(GNAME NonZeroDigit):
$(B 1)
Expand All @@ -640,24 +642,47 @@ $(GNAME DecimalDigits):
$(GLINK DecimalDigit)
$(GLINK DecimalDigit) $(I DecimalDigits)

$(GNAME DecimalDigitsUS):
$(GLINK DecimalDigitUS)
$(GLINK DecimalDigitUS) $(I DecimalDigitsUS)

$(GNAME DecimalDigitsNoSingleUS):
$(GLINK DecimalDigit)
$(GLINK DecimalDigit) $(GLINK DecimalDigitsUS)
$(GLINK DecimalDigitsUS) $(GLINK DecimalDigit)

$(GNAME DecimalDigitsNoStartingUS):
$(GLINK DecimalDigit)
$(GLINK DecimalDigit) $(GLINK DecimalDigitsUS)

$(GNAME DecimalDigit):
$(B 0)
$(GLINK NonZeroDigit)

$(GNAME DecimalDigitUS):
$(GLINK DecimalDigit)
$(B _)

$(GNAME BinaryDigits):
$(GLINK BinaryDigit)
$(GLINK BinaryDigit) $(I BinaryDigits)
$(GNAME BinaryDigitsUS):
$(GLINK BinaryDigitUS)
$(GLINK BinaryDigitUS) $(I BinaryDigitsUS)

$(GNAME BinaryDigit):
$(B 0)
$(B 1)

$(GNAME BinaryDigitUS):
$(GLINK BinaryDigit)
$(B _)

$(GNAME OctalDigits):
$(GLINK OctalDigit)
$(GLINK OctalDigit) $(I OctalDigits)

$(GNAME OctalDigitsUS):
$(GLINK OctalDigitUS)
$(GLINK OctalDigitUS) $(I OctalDigitsUS)

$(GNAME OctalDigit):
$(B 0)
$(B 1)
Expand All @@ -667,14 +692,29 @@ $(GNAME OctalDigit):
$(B 5)
$(B 6)
$(B 7)

$(GNAME OctalDigitUS):
$(GLINK OctalDigit)
$(B _)

$(GNAME HexDigits):
$(GLINK HexDigit)
$(GLINK HexDigit) $(I HexDigits)

$(GNAME HexDigitsUS):
$(GLINK HexDigitUS)
$(GLINK HexDigitUS) $(I HexDigitsUS)

$(GNAME HexDigitsNoSingleUS):
$(GLINK HexDigit)
$(GLINK HexDigit) $(GLINK HexDigitsUS)
$(GLINK HexDigitsUS) $(GLINK HexDigit)

$(GNAME HexDigit):
$(GLINK DecimalDigit)
$(GLINK HexLetter)

$(GNAME HexLetter):
$(B a)
$(B b)
$(B c)
Expand Down Expand Up @@ -774,35 +814,42 @@ $(GNAME Float):
$(GNAME DecimalFloat):
$(GLINK LeadingDecimal) $(B .)
$(GLINK LeadingDecimal) $(B .) $(GLINK DecimalDigits)
$(GLINK DecimalDigits) $(B .) $(GLINK DecimalDigits) $(GLINK DecimalExponent)
$(GLINK DecimalDigits) $(B .) $(GLINK DecimalDigitsNoSingleUS) $(GLINK DecimalExponent)
$(B .) $(GLINK DecimalInteger)
$(B .) $(GLINK DecimalInteger) $(GLINK DecimalExponent)
$(GLINK LeadingDecimal) $(GLINK DecimalExponent)

$(GNAME DecimalExponent)
$(B e) $(GLINK DecimalDigits)
$(B E) $(GLINK DecimalDigits)
$(B e+) $(GLINK DecimalDigits)
$(B E+) $(GLINK DecimalDigits)
$(B e-) $(GLINK DecimalDigits)
$(B E-) $(GLINK DecimalDigits)
$(GLINK DecimalExponentStart) $(GLINK DecimalDigitsNoSingleUS)

$(GNAME DecimalExponentStart)
$(B e)
$(B E)
$(B e+)
$(B E+)
$(B e-)
$(B E-)

$(GNAME HexFloat):
$(GLINK HexPrefix) $(GLINK HexDigits) $(B .) $(GLINK HexDigits) $(GLINK HexExponent)
$(GLINK HexPrefix) $(B .) $(GLINK HexDigits) $(GLINK HexExponent)
$(GLINK HexPrefix) $(GLINK HexDigits) $(GLINK HexExponent)
$(GLINK HexPrefix) $(GLINK HexDigitsNoSingleUS) $(B .) $(GLINK HexDigitsNoSingleUS) $(GLINK HexExponent)
$(GLINK HexPrefix) $(B .) $(GLINK HexDigitsNoSingleUS) $(GLINK HexExponent)
$(GLINK HexPrefix) $(GLINK HexDigitsNoSingleUS) $(GLINK HexExponent)

$(GNAME HexPrefix):
$(B 0x)
$(B 0X)

$(GNAME HexExponent):
$(B p) $(GLINK DecimalDigits)
$(B P) $(GLINK DecimalDigits)
$(B p+) $(GLINK DecimalDigits)
$(B P+) $(GLINK DecimalDigits)
$(B p-) $(GLINK DecimalDigits)
$(B P-) $(GLINK DecimalDigits)
$(GLINK HexExponentStart) $(GLINK DecimalDigitsNoSingleUS)

$(GNAME HexExponentStart):
$(B p)
$(B P)
$(B p+)
$(B P+)
$(B p-)
$(B P-)


$(GNAME Suffix):
$(GLINK FloatSuffix)
Expand All @@ -823,7 +870,7 @@ $(GNAME ImaginarySuffix):

$(GNAME LeadingDecimal):
$(GLINK DecimalInteger)
$(B 0) $(GLINK DecimalDigits)
$(B 0) $(GLINK DecimalDigitsNoSingleUS)
)

$(P Floats can be in decimal or hexadecimal format.)
Expand Down

0 comments on commit 4e60a4f

Please sign in to comment.