Path: utzoo!attcan!uunet!ncrlnk!ncrcae!hubcap!gatech!bloom-beacon!mit-eddie!apollo!vasta From: vasta@apollo.COM (John Vasta) Newsgroups: comp.sys.apollo Subject: Re: C++ vs Apollo Sys Files ? (Long) Compatability ? Keywords: c++ apollo system compatability Message-ID: <4200289e.1ad5a@apollo.COM> Date: 13 Mar 89 15:37:00 GMT References: <1093@cheops.eecs.unsw.oz> Reply-To: vasta@apollo.COM (John Vasta) Organization: Apollo Computer, Chelmsford, MA Lines: 25 I'm responsible for Apollo's C++ product. Yes, C++ is lagging behind C in the implementation of language extensions such as __attribute() and #options. The __attribute() syntax didn't exist when C++ was released; the next version will support it. In the meantime, you can define macros so that __attribute is preprocessed out: #define NO_ATTRIBUTE #define __attribute(a) NO_ATTRIBUTE (The two macros are required to get around a bug in the macro preprocessor; just defining __attribute(a) with a null expansion won't work.) Put these macros in your source file, before including any header files. The #options syntax was added to some header files after C++ was released, also. Again, the next version will support it. This syntax cannot be easily defined away, you'll have to edit the header files. I suggest putting #ifdef c_plusplus ... #endif around it for now. John Vasta (vasta@apollo.com) Apollo Computer, Inc.