Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!munnari!otc!mikem From: mikem@otc.OZ (Michael Mowbray) Newsgroups: comp.lang.c++ Subject: Re: cfront: internal error Message-ID: <43@otc.OZ> Date: Thu, 20-Nov-86 03:56:02 EST Article-I.D.: otc.43 Posted: Thu Nov 20 03:56:02 1986 Date-Received: Thu, 20-Nov-86 22:29:59 EST References: <644@comp.lancs.ac.uk> <6348@alice.UUCP> <151@sgi.UUCP> Organization: O.T.C. Systems Development, Australia Lines: 46 Summary: No error found In article <151@sgi.UUCP> Mark Callow (msc@sgi.uucp) writes: > I resisted the temptation to reply to the Stephen's message with a report > of my own since I was so sure that others, including Bjarne, must be aware > of the problem that I would be simply flaming at c++'s error recovery. > However in the light of the above response ... > > I left out the ";" in the hello world program. I.e. > > #include > > main() > { > cout << "Hello, world\n" > } > > and was rewarded with the message: > > "hello.c", line 7: internal <> error: bus error (or something nasty like that) > > -- I presume this is only in old versions. On our recently-arrived release 1.1 I get the following: CC hello.c: "hello.c", line 6: error: ';' expected at end of statement or declaration before '}' 1 error which is fine. This reminds me of a problem we had when re-writing error.c to use varargs. The person doing the re-write made a minor error in the types. Varargs couldn't handle things which were cast to int when put on the stack. This strangely caused the error messages to contain obscure references to "tokenX" instead of the character it actually meant (e.g: the ';' above) and the solution in that case was to use int's rather than short's. I'm wondering if there are other subtle porting traps that make one angry at cfront when it's really just a bad port. Mike Mowbray Senior Engineer Systems Development Overseas Telecommunications Commission (Australia) UUCP: {seismo,mcvax}!otc.oz!mikem ACSnet: mikem@otc.oz