From 0a2ef84a7a1c5e898c9fbf7c9e84a65d965212c6 Mon Sep 17 00:00:00 2001
From: Kaz Kylheku <kaz@kylheku.com>
Date: Wed, 12 Aug 2015 21:04:04 -0700
Subject: Floating-point constant tightening.

* parser.l (grammar): Change order of rule which recognizes FLODOT with
a one-character trailing context other than a dot, and the rule which
diagnoses trailing junk. The issue is that this order gives the wrong
interpretation to 123.E, treating it as 123.  followed by E rather than
trailing junk, like in the case of 123.0E or 123.B.

* txr.1: Adding the valid example 1.E5.  Removing references to dot as
consing dot.  Fixed documentation which says that 1.E is 1 followed by
a consing dot and E. The wrong behavior in fact produced 1.0 followed
by E. No consing dot semantics.
---
 txr.1 | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

(limited to 'txr.1')

diff --git a/txr.1 b/txr.1
index 6ef3db2d..e9bf5832 100644
--- a/txr.1
+++ b/txr.1
@@ -2652,17 +2652,18 @@ Examples:
   9.E19
   -.5
   +3E+3
+  1.E5
 .cble
 
 Examples which are not floating-point constant tokens:
 
 .cblk
-  .      ;; consing dot
+  .      ;; dot token, not a number
   123E   ;; the symbol 123E
   1.0E-  ;; syntax error: invalid floating point constant
   1.0E   ;; syntax error: invalid floating point constant
-  1.E    ;; 1; consing dot; symbol E
-  .e     ;; consing dot followed by symbol e
+  1.E    ;; syntax error: invalid floating point literal
+  .e     ;; syntax error: dot token followed by symbol
 .cble
 
 In \*(TX there is a special "dotdot" token consisting of two consecutive periods.
-- 
cgit v1.2.3