purported ANSI compiler in 5.1

Christopher JS Vance Christopher-Vance at adfa.oz.au
Wed Mar 20 09:50:03 AEST 1991


Having waited for some time for my sysadmin to install 5.1, I am
dismayed to discover that the new-fangled cc, which we'd been led to
believe was an ANSI compiler, is in reality only a compiler that can be
persuaded to handle prototypes.  (Uhh, wow?!??)  No include files, no
libraries.  It's even less ANSI than GNU gcc, which at least comes with
a few include files. 

Will somebody from Pyramid (or somebody else who knows) enlighten me:

* if I declare a routine which has a variable number of arguments with
the standard ANSI prototype (e.g., printf) and then call it, will my
code link properly with the standard libraries?

* does anybody have a <stdarg.h> for this compiler that works? (I'm
informed that GNU gcc (with its <stdarg.h>) only works with the standard
library if the call was made when *no prototype* is in scope when you
call the function concerned.  i.e., GNU gcc has a <stdarg.h> that is
incompatible with existing library code.  This is *definitely* broken...)

Or, in other words:

* if I declare a prototype with an ellipsis in the ANSI way, will I get
compatible code at the *calling* side?

* how do I write the *called* side of a function with the same prototype?



More information about the Comp.sys.pyramid mailing list