> -----Original Message-----
> From: Bernhard Fischer [mailto:[EMAIL PROTECTED] 
> Sent: Monday, October 16, 2006 9:26 AM
> To: Rob Landley
> Cc: [email protected]; Svein Berge
> Subject: Re: [Tinycc-devel] Preprocessor output
> 
> On Sun, Oct 15, 2006 at 07:40:49PM -0400, Rob Landley wrote:
> >On Saturday 14 October 2006 1:36 pm, Svein Berge wrote:
> >> > -----Original Message-----
> >> > From: Bernhard Fischer [mailto:[EMAIL PROTECTED] 
> >> > Sent: Saturday, October 14, 2006 6:43 PM
> >> > To: [email protected]
> >> > Cc: [EMAIL PROTECTED]
> >> > Subject: Re: [Tinycc-devel] Preprocessor output
> >> > 
> >> > On Sat, Oct 14, 2006 at 12:24:58AM +0200, Svein Berge wrote:
> >> > >For my project (www.sourceforge.org/projects/jsext), I need 
> >> > a C compiler
> >> > >(preferrably tiny), but also a C preprocessor. I've added a 
> >> > few lines of
> >> > >code to add the -E option to tcc and a tcc_preprocess 
> >> > function to tcclib.
> >> > >The -E option makes tcc stop after preprocessing and send 
> >> > output to stdout
> >> > >(like gcc does). The tcc_preprocess function in libtcc takes 
> >> > C code as a
> >> > >char * and returns preprocessed C code as a char *.
> >> > >
> >> > >The preprocessor output contains preprocessed code, a list 
> >> > of all constant
> >> > >#defines (that is, those without parameters) and # 
> >> > linenumber "filename"
> >> > >records.
> >> > >
> >> > >Enclosed are the diff files for libtcc.h and tcc.c. I hope 
> >> > this will be
> >> > 
> >> > Sounds useful. Unfortunately your patch doesn't apply to current
> >> > cvs. Could you please send a "diff -u" against current cvs?
> >> > 
> >> > TIA,
> >> > 
> >> > >included in a future release. It may be a useful feature for 
> >> > others, too,
> >> > >adds little code and is backwards-compatible.
> >> 
> >> Right... I worked from release 0.9.23. Here are the diffs 
> against CVS (with
> >> -u).
> 
> Why don't you use a separate PARSE_FLAG instead of the tcc_preprocess
> variable?

No reason.

> Also fputs(s,stdout) is superfluous. Better make that read puts(s).

Nope. puts(s) adds a newline, fputs doesn't.

Svein

> Can't you get rid of these if (tcc_preprocess) changed_file(); by just
> emitting the current tokens (after macro expansion) if e.g. 
> PARSE_FLAG_CPP
> is set? I'd expect this to be smaller and perhaps cleaner, but i admit
> that i didn't try to implement it (yet).



_______________________________________________
Tinycc-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to