Xref: utzoo comp.lang.misc:7316 comp.arch:21917 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!cs.utexas.edu!uunet!mcsun!hp4nl!charon!dik From: dik@cwi.nl (Dik T. Winter) Newsgroups: comp.lang.misc,comp.arch Subject: Re: Algol68 Message-ID: <3279@charon.cwi.nl> Date: 7 Apr 91 22:51:31 GMT References: <801@taniwha.UUCP> <4217@zaphod.UUCP> <809@taniwha.UUCP> Sender: news@cwi.nl Followup-To: comp.lang.misc Organization: CWI, Amsterdam Lines: 22 In article <809@taniwha.UUCP> paul@taniwha.UUCP (Paul Campbell) writes: > PS: for those who don't know even the revised report contains ambiguity, > the most common example is: > > union([]int , struct (int a, b, c)) fred = (1,2,3); > I know there are even outright errors in the revised report (if I remember right, somewhere in the transupt section there is a heap declaration that is not allowed), but as far as I know the above is disallowed. I have to check because I have no RR here at home, but the CDC Algol 68 compiler (pretty good and extremely complete) has the following to say: 1 ( 2 'UNION'([]'INT','STRUCT'('INT'A,B,C)) FRED = (1,2,3); 3 PRINT(FRED) 4 ) ERRORS DETECTED DURING THE MODE CHECKING *** 2 F MODE-ERROR IN IDENTITY DECLARATION FOR FRED which means that there is no coercion that will coerce the right-hand side to the proper mode. -- dik t. winter, cwi, amsterdam, nederland dik@cwi.nl