RE: [boost] Re: Wave C++ Review Begins Today - February 7, 2005

-----Original Message----- From: boost-bounces@lists.boost.org [mailto:boost-bounces@lists.boost.org] On Behalf Of Paul Mensonides Sent: woensdag 9 februari 2005 23:44 To: boost@lists.boost.org Subject: RE: [boost] Re: Wave C++ Review Begins Today - February 7, 2005
-----Original Message----- From: boost-bounces@lists.boost.org [mailto:boost-bounces@lists.boost.org] On Behalf Of Hartmut Kaiser
[ attribution already lost ]
b. Sometimes it may be useful to be able to "partially preprocess" given source. E.g. I would like to have cleaner version of STLport just for my platform.
It would be nice if I could specify list of #defines and #undefines to be processed, the rest left as is.
Hmmm, that's more complex, I'll have to think about this.
That is actually a lot more complex. It implies a heavy duty dependency analysis on, for example, macros. I think that implementing this would be more complex (to do correctly) than the entire preprocessor altogether.
I've been thinking about this as well. I'm not sure if we actually want the same, but my idea was to have a partial-evaluation mode which would replace only those tokens actually defined, and evaluate only those #ifdef( )/#if statements that depend on the macros explicitly defined or undefined. I suspect the major internal difference is that in full evaluation a macro is either defined or undefined, while in partial evaluation it can also be not evaluated. The technically tricky stuff is probably neatly rewriting complex #if (a&&b||c) conditions. Requirement-wise it's what to do with #include'd files. Regards, Michiel Salters This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
participants (1)
-
Michiel Salters