[comp.lang.c] Single quotes around an evaluated #define?

poage@sunny.UUCP (Tom Poage) (11/06/88)

Hope this is appropriate . . . so here goes.

I am working on an application in Unify's Accell which uses
cpp for preprocessing.  In order to gain some consistency and
reduce the volume of this 4GL code, I would like to split the
files into a number of (mostly) redundant modules.  At the
point where this module is to be inserted, I take care of 
a couple of defines and insert an #include.  Now, the problem
is this: Accell quotes literal strings in single quotes.  What
sorts of contortions are required to evaluate a define and 
insert it into single quotes using the cpp mechanism.  Any
experiments/RTFMing don't come up with anything.  Here's what
I would like it to do:

	#ifdef CURRENT_TABLE
	#undef CURRENT_TABLE
	#define CURRENT_TABLE mytable
	#endif
	#include "mymodule"

where "mymodule" should eventually contain

	SET mytable:$foobar TO 'mytable'

as a result of somthing like

	SET CURRENT_TABLE:$foobar TO 'CURRENT_TABLE' <-- Hah! Evaluate this!

I can do somthing like add the literal as an additional definition;
but that's too easy:

	#define CURRENT_TABLE_NAME 'mytable'

Anyhow, I thought I would see what the folks in netland had to say to
this musing.  This could be useful to others in C.
-- 

Tom Poage, UCDMC Clinical Engineering, Sacto., CA
ucdavis.ucdavis.edu!sunny!{poage,root,postmaster,news}
ucbvax!ucdavis!sunny!{poage,root,postmaster,news}