[comp.sys.amiga] Manx 3.6a Bugs

GIGUERE@WATCSG.BITNET (Eric Giguere) (03/06/89)

So here I am, running a simple grammar through Bison and then compiling
the output file.... but there's a little problem with #define:

    #ifndef __STDC__
    #define const
    #endif

The code is perfectly valid C... but Manx doesn't let you define keywords
as macros (const is a keyword in 3.6a even though it's not implemented).
After getting the error message I looked in the manual and yep, that's
what it says.  Arrgh!  Who was the idiot who put this into the compiler?
Deleting the above lines doesn't solve anything because 'const' leads
to problems later on.  I hope this is fixed in 4.0 --- a warning message
I can see, but an error message no way!

Well, enough of a tirade.  It's easy enough to use a text editor to
delete all references to 'const', but I'm going to modify the Bison
source to fix this permanently.  Maybe what we need is

    #ifdef __STDC__
    #define CONST const
    #else
    #define CONST
    #endif

which is ugly but would preserve 'const' for those compilers that
support it.

Speaking of bugs, 3.6a seems to have problems with #line directives
when compiling with the '-n' (debugger) flag -- the assembler croaks.

I await 4.0 anxiously....

Eric Giguere
Computer Systems Group, University of Waterloo

BITNET: GIGUERE@WATCSG         Other: giguere@watcsg.UWaterloo.CA
UUNET : watcsg!giguere@uunet.UU.NET

hans@nlgvax.UUCP (Hans Zuidam) (03/06/89)

In article <8903052320.AA03483@jade.berkeley.edu> GIGUERE@WATCSG.BITNET (Eric Giguere) writes:
>..............   Arrgh!  Who was the idiot who put this into the compiler?

Would you be so kind to leave out these kind of qualifications in your
next posting? No one is served by them and your problem isn't solved by
making such qualifications.

Thank you,
						Hans
-- 
Hans Zuidam                                    E-Mail: hans@pcg.philips.nl
Philips Telecommunications and Data Systems,   Tel: +31 40 892288
Project Centre Geldrop, Building XR
Willem Alexanderlaan 7B, 5664 AN Geldrop       The Netherlands

paolucci@snll-arpagw.UUCP (Sam Paolucci) (03/06/89)

In article <8903052320.AA03483@jade.berkeley.edu> GIGUERE@WATCSG.BITNET (Eric Giguere) writes:
->
->So here I am, running a simple grammar through Bison and then compiling
->the output file.... but there's a little problem with #define:
->
->    #ifndef __STDC__
->    #define const
->    #endif
->
->The code is perfectly valid C... but Manx doesn't let you define keywords
->as macros (const is a keyword in 3.6a even though it's not implemented).
->After getting the error message I looked in the manual and yep, that's
->what it says.  Arrgh!  Who was the idiot who put this into the compiler?
->Deleting the above lines doesn't solve anything because 'const' leads
->to problems later on.  I hope this is fixed in 4.0 --- a warning message
->I can see, but an error message no way!
->
->Well, enough of a tirade.  It's easy enough to use a text editor to
->delete all references to 'const', but I'm going to modify the Bison
->source to fix this permanently.  Maybe what we need is
->
->    #ifdef __STDC__
->    #define CONST const
->    #else
->    #define CONST
->    #endif
->
->which is ugly but would preserve 'const' for those compilers that
->support it.
->
->Speaking of bugs, 3.6a seems to have problems with #line directives
->when compiling with the '-n' (debugger) flag -- the assembler croaks.
->
->I await 4.0 anxiously....

For your info, I reported both of the above problems to Manx over one year ago.

->Eric Giguere
->Computer Systems Group, University of Waterloo
->
->BITNET: GIGUERE@WATCSG         Other: giguere@watcsg.UWaterloo.CA
->UUNET : watcsg!giguere@uunet.UU.NET


-- 
					-+= SAM =+-
"the best things in life are free"

				ARPA: paolucci@snll-arpagw.llnl.gov