Boost logo

Boost :

Subject: Re: [boost] [preprocessor metaprogramming] tools
From: Hartmut Kaiser (hartmut.kaiser_at_[hidden])
Date: 2012-07-30 20:45:23


> > Well, thinking about it... The trace already (implicitly) has the
> > information about a macro name being blue painted. The rescanning
> > [...] output gives you the scope for which the macro under expansion
> > is not available for further expansion (e.g. it is marked blue).
>
> Hartmut, does Wave still use a recursive expansion model?

Yes. I have not re-implemented the macro-expansion since.

> If so, while Wave emulates the correct results well, it gets there in a
> fashion that isn't technically correct. Debugging preprocessor
> metaprogramming naturally exposes that internal process.
>
> The theoretical process is essentially a stream-editing process with some
> (implementation-specific) method of dealing with the hidesets (i.e.
> virtual tokens or whatever). What would be ideal for debugging is a
> preprocessor that implemented this directly (such as the algorithm I
> posted a while back--which is nowhere near efficient enough for a real
> preprocessor). Otherwise, you are 1) really only debugging against Wave
> instead of against a standard and 2) learning the wrong things.

Sure, I agree. However as we know, the differences are limited to a tiny set
of corner cases.

Regards Hartmut
---------------
http://boost-spirit.com
http://stellar.cct.lsu.edu


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk