--* From postmaster%watson.vnet.ibm.com@yktvmv.watson.ibm.com  Thu Jul  1 16:31:44 1993
--* Received: from yktvmv2.watson.ibm.com by radical.watson.ibm.com (AIX 3.2/UCB 5.64/900524)
--*           id AA14992; Thu, 1 Jul 1993 16:31:44 -0400
--* X-External-Networks: yes
--* Received: from watson.vnet.ibm.com by yktvmv.watson.ibm.com (IBM VM SMTP V2R3)
--*    with BSMTP id 1667; Thu, 01 Jul 93 16:32:39 EDT
--* Received: from YKTVMV by watson.vnet.ibm.com with "VAGENT.V1.0"
--*           id <A.SANTAS.NOTE.YKTVMV.3233.Jul.01.16:32:38.-0400>
--*           for asbugs@watson; Thu, 01 Jul 93 16:32:39 -0400
--* Received: from bernina.ethz.ch by watson.ibm.com (IBM VM SMTP V2R3) with TCP;
--*    Thu, 01 Jul 93 16:32:38 EDT
--* Received: from neptune by bernina.ethz.ch with SMTP inbound id <10987-0@bernina.ethz.ch>; Thu, 1 Jul 1993 22:32:30 +0200
--* From: Philip Santas <santas@inf.ethz.ch>
--* Received: from rutishauser.inf.ethz.ch (rutishauser-gw.inf.ethz.ch) by neptune id AA28727; Thu, 1 Jul 93 22:32:25 +0200
--* Date: Thu, 1 Jul 93 22:32:24 +0200
--* Message-Id: <9307012032.AA13584@rutishauser.inf.ethz.ch>
--* Received: from ru7.inf.ethz.ch.rutishauser by rutishauser.inf.ethz.ch id AA13584; Thu, 1 Jul 93 22:32:24 +0200
--* To: asbugs@watson.ibm.com
--* Subject: names and reals
--* Cc: bronstein, santas

--@ Fixed  by: SSD Fri Jul 16 14:51:54 1993
--@ Tested by: none
--@ Summary:   Not a bug.  Scanner is correctly parsing a real.


There is a problem when one combines 0 and 1 in identifiers
and record notation.
The compiler assumes that 1.1 is a real in the following program,
when I use this for accessing a record.
(add for instance the line
  import SingleFloat
 and then we get multiple meanings).

However if I use (1).1, then the program compiles, but
we still have problems with the syntax of identifiers in
the definition of the language.

Philip

-----------------------
#include "aslib.as"

--import SingleFloat
SI ==> SingleInteger
import SI

1:Record(1:SI) := [0]
1.1
----------errors-------
"test1.as", line 9: 1.1
                    ^
[L9 C1] (Error) The expression has 0 possible meanings.
  Subexpression '1.1':

 
--+ The scanner is specified to parse floating-point numbers in the usual syntax.
--+ As a result, some uses of the identifiers 0 and 1 are treated as integer or
--+ floating-point literals.  If that is not what you intend, use a syntax which
--+ makes it unambiguous.  There are many ways to do so, as shown below.
--+ 
--+ ------------------------------------------------------------------------------
--+ #include "aslib.as"
--+ 
--+ --import SingleFloat
--+ SI ==> SingleInteger
--+ import SI
--+ 
--+ 1:Record(1:SI) := [0]
--+ -- 1.1		-- bad
--+ -- 1 . 1	-- good
--+ -- 1(1)		-- good
--+ -- 1.(1)	-- bad
--+ -- (1).1	-- good
--+ -- (1 1)	-- good
--+ -- 1 1		-- good
