Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/5/84; site nsc-pdc.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!decvax!tektronix!reed!nsc-pdc!joemu From: joemu@nsc-pdc.UUCP (Joe Mueller) Newsgroups: net.micro.cbm Subject: how good are the C compilers for the 64? Message-ID: <230@nsc-pdc.UUCP> Date: Wed, 10-Jul-85 02:55:39 EDT Article-I.D.: nsc-pdc.230 Posted: Wed Jul 10 02:55:39 1985 Date-Received: Fri, 12-Jul-85 04:04:45 EDT Distribution: net Organization: NSC Portland Development Center, Portland Oregon Lines: 33 I am wondering how good a job the various implementors have done in bringing up C on the 64. All the advertisements say they are "Kernighan and Ritchie" minus maybe bitfields. Could someone tell me the following: 1. Is the preprocessor a full implementation with: a. macros with parameters b. include capabilities c. handles expressions like FOO && BAR || BAZ in #if statements 2. Can their parsers handle complex declarations and their expression handlers use complex data types? For example try: int (*(*(*foo)[5])())[7] Which declares foo as pointer to array of 5 pointers to functions returning a pointer to an array of 7 int (whew!!) 3. Do they have simple things like: a. structures b. unions c. bitfields (I know at least one doesn't) e. typedefs (and if so, do they scope properly; pcc doesn't even do that) f. multi-dimentional arrays g. floats and doubles h. unsigned types i. register, static, and extern data types 4. Can you link with assembly language? Are there any limitations? Can you create and use librarys? Can you replace a library function with one of your own? 5. Do they handle initializers for simple and complex types like structs? 6. Anything else that may be missing that you noticed.