From: David Abrahams (dave_at_[hidden])
Date: 2003-08-02 07:56:44
"Fernando Cacciola" <fcacciola_at_[hidden]> writes:
> Yep, I've noticed. I actually voiced that opinion even though your
> macro _in particular_ seemed OK just to set the records for the kind of
> trouble that can ocurr if code repetition tasks are replaced by macros
> without properly balancing the drawbacks and implied subtelties.
> For instance, many of the complains I've received were because invalid
> macro arguments led to impossible to understand error messages. Even
> if the macro just adds a declaration, figuring out the source of the
> error can be impossible without knowing the expanded text of the
> macro. We even tried to code-up some sort of utility to expand macros
> on-the-fly with the given arguments, but that was impractical for us
> because the complete macro expansion could depend on many other macros
> and so on, so the "utility" must have access to the entire source and
> include tree.
I have just such a utility. It's called "g++ -E".
Then I have some emacs code which roughly reformats the results so
that I can read them.
-- Dave Abrahams Boost Consulting www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk