Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!henry
From: henry@utzoo.UUCP (Henry Spencer)
Newsgroups: net.lang.c
Subject: Re: Is this correct action for the c compiler/preprocessor ??
Message-ID: <6115@utzoo.UUCP>
Date: Mon, 4-Nov-85 19:55:52 EST
Article-I.D.: utzoo.6115
Posted: Mon Nov  4 19:55:52 1985
Date-Received: Mon, 4-Nov-85 19:55:52 EST
References: <8510301206.AA27124@ucbvax.berkeley.edu>
Organization: U of Toronto Zoology
Lines: 14

> I would think that anything inside double quotes is protected
> from any/all substitution, and that the preprocessor, would
> not do the parameter replacement.

This is an ill-documented quirk of the Unix C preprocessor.  It is not
portable because many other C compilers don't do it, and X3J11 has
decided to provide the capability but with a different syntax.  Until
that happy day when a randomly-chosen C compiler has a high probability
of conforming to the ANSI soon-to-be-standard, the only safe thing to do
is to avoid writing macros in which something that looks like one of the
parameter names appears inside a string.
-- 
				Henry Spencer @ U of Toronto Zoology
				{allegra,ihnp4,linus,decvax}!utzoo!henry