Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!husc6!rutgers!cbmvax!grr
From: grr@cbmvax.UUCP (George Robbins)
Newsgroups: comp.lang.c
Subject: Re: pre#defined cpp symbols
Message-ID: <2162@cbmvax.UUCP>
Date: Mon, 27-Jul-87 22:39:45 EDT
Article-I.D.: cbmvax.2162
Posted: Mon Jul 27 22:39:45 1987
Date-Received: Wed, 29-Jul-87 05:08:22 EDT
References: <1836@zaphod.UUCP> <165600004@uiucdcsb> <657@hsi.UUCP>
Reply-To: grr@cbmvax.UUCP (George Robbins)
Organization: Commodore Technology, West Chester, PA
Lines: 27

In article <657@hsi.UUCP> stevens@hsi.UUCP (Richard Stevens) writes:
> 
> I've tried using strings to find these and it doesn't always seem to
> work.  For example, 'strings /lib/cpp | grep vax' on a 4.3 system
> won't show 'vax' as being predefined, but it is.  Looking at the source
> for cpp shows that both "vax" and "unix" are put into the symbol table
> the same way.
> 
> Also, I was just trying to find all the predefined symbols under SCO Xenix
> using strings and none of the 'M_I86xM' symbols show up, yet they are defined.
> 
> Anyone know why ??

Several of the strings implementations I've seen somehow manage to avoid
starting at the beginning of the data segment.  Perhaps through some kind of
accounting error in working out the file offset, I guess.  There's a pretty
good chance these string constants come up first thing in the file and aren't
printed out.

It is also possible that the compiler controlling program "cc" is inserting
-Dxxxxx type defines when it passes the command line paramenters to "cpp".
The details differ from system to system.

-- 
George Robbins - now working for,	uucp: {ihnp4|seismo|rutgers}!cbmvax!grr
but no way officially representing	arpa: cbmvax!grr@seismo.css.GOV
Commodore, Engineering Department	fone: 215-431-9255 (only by moonlite)