jh@efd.lth.se (Joergen Haegg) (01/21/91)
Ultrix 4.0.1, vaxstation 2000: In /usr/include/math.h I found this line: #if defined(GFLOAT) || CC$gfloat ^^^^^^^^^ And this is not the only one. Why can't Digital leave $ in VMS where it belongs? Gcc complains. And if I look in the C book it says that an identifier can only be [a-zA-Z_][a-zA-Z_0-9]. Is there a fix for gcc, or is there another way to fix this? -- -- Joergen Haegg jh@efd.lth.se postmaster@efd.lth.se System manager @ efd 046-107492 Lund Institute of Technology Sweden
diamond@jit345.swstokyo.dec.com (Norman Diamond) (01/23/91)
In article <1991Jan21.152619.2771@lth.se> jh@efd.lth.se (Joergen Haegg) writes: >Ultrix 4.0.1, vaxstation 2000: >In /usr/include/math.h I found this line: >#if defined(GFLOAT) || CC$gfloat > ^^^^^^^^^ >And this is not the only one. Why can't Digital leave $ in VMS >where it belongs? If you find out, please tell me ;-) >Gcc complains. And if I look in the C book it says that an identifier >can only be [a-zA-Z_][a-zA-Z_0-9]. The header file is not designed for gcc. A vendor is allowed to organize its standard headers in any manner for use with its compier, as long as it compiles conforming programs correctly -- the headers don't even have to exist as files. Furthermore, a compiler that does not claim ANSI conformance does not have to do anything at all, though it does more than it has to. (This is not the company's opinion.) >Is there a fix for gcc, or is there another way to fix this? gcc has a "fixincludes" script, but if you intend to continue using the supplied cc as well, then you don't want to change the headers in /usr/include. (This is not the company's opinion.) My suggestion: You might create another directory, /usr/gcc_include or something, and always instruct gcc to search the other directory first. (I once did this at another employer. It was not that company's opinion either.) -- Norman Diamond diamond@tkov50.enet.dec.com If this were the company's opinion, I wouldn't be allowed to post it.
JW_Schilperoort@pttrnl.nl (Schilperoort J.W.) (01/23/91)
jh@efd.lth.se (Joergen Haegg) writes: >Ultrix 4.0.1, vaxstation 2000: > >In /usr/include/math.h I found this line: >#if defined(GFLOAT) || CC$gfloat > ^^^^^^^^^ >And this is not the only one. Why can't Digital leave $ in VMS >where it belongs? Beats me. While we are on the subject, check out sys/file.h: #ifdef KERNEL && !defined(_POSIX_SOURCE) According to me and to gcc this is garbage. >Is there a fix for gcc, or is there another way to fix this? Remove "|| CC$gfloat" from the include files. Alternatively, copy the files to /usr/local/lib/gcc-include (or whatever) and fix it there. -- Sjaak Schilperoort JW_Schilperoort@pttrnl.nl PTT Research Neher Laboratorium ...!hp4nl!dnlunx!sjaak Leidschendam, Netherlands schilperoort@hlsdnl5.bitnet
fingerhu@ircam.fr (Michel Fingerhut) (01/24/91)
Norman Diamond asks:
>If you find out [why VMS-like identifiers appear in ultrix], please tell me ;-)
I'd say they intend to merge VMS and Ultrix... Is this :-) or :-( ?
avolio@decuac.dec.com (Frederick M. Avolio) (01/25/91)
Oh, gee.... The blooming $ junk is in ther I imagine because some sloppy programmer left it there. Much s/w in Digital is developed on RISC platforms (UNIX) and then moved to VMS. Normally one sees conditional compiles, etc. that contain VMSisms, but sometimes they slip through otherwise. It is much easier to bend UNIX to accomodate VMS than the other way around :-) Fred
brister@decwrl.dec.com (James Brister) (01/26/91)
The idea behind the '$' in VMS tokens/filenames etc. Was that the '$' was "reserved" to DEC, and therefor wouldn't ever clash with a user or thrid-paty specified token/filename etc. Unfortunately, until recently the DEC universe has been revolving around VMS (now it's a binary star system), so extracting all the VMS'isms from stuff moved to Ultrix is a lot of work. James "Who is in NO way speakling for DEC (they don't pay me enough)." -- James Brister brister@decwrl.dec.com DEC Western Software Lab., Palo Alto, CA {uunet,sun,pyramid}!decwrl!brister
meissner@osf.org (Michael Meissner) (01/29/91)
In article <1991Jan21.152619.2771@lth.se> jh@efd.lth.se (Joergen Haegg) writes: | Ultrix 4.0.1, vaxstation 2000: | | In /usr/include/math.h I found this line: | #if defined(GFLOAT) || CC$gfloat | ^^^^^^^^^ | | And this is not the only one. Why can't Digital leave $ in VMS | where it belongs? | | Gcc complains. And if I look in the C book it says that an identifier | can only be [a-zA-Z_][a-zA-Z_0-9]. | | Is there a fix for gcc, or is there another way to fix this? Quoting from the GCC manual: `DOLLARS_IN_IDENTIFIERS' Define this to be nonzero if the character `$' should be allowed by default in identifier names. -- Michael Meissner email: meissner@osf.org phone: 617-621-8861 Open Software Foundation, 11 Cambridge Center, Cambridge, MA, 02142 Considering the flames and intolerance, shouldn't USENET be spelled ABUSENET?
rusty@belch.Berkeley.EDU (Rusty Wright) (01/30/91)
In article <MEISSNER.91Jan28174015@curley.osf.org> meissner@osf.org (Michael Meissner) writes:
From: meissner@osf.org (Michael Meissner)
Subject: Re: Why has Digital $ in their headerfiles in ultrix?
Date: 28 Jan 91 22:40:15 GMT
Quoting from the GCC manual:
`DOLLARS_IN_IDENTIFIERS'
Define this to be nonzero if the character `$' should be allowed
by default in identifier names.
Shouldn't that be `DOLLARS$IN$IDENTIFIERS'?
frank@croton.enet.dec.com (Frank Wortner) (01/30/91)
Commercial operating systems are used to make money, therefore dollar signs are appropriate. ;-) Frank