Boost logo

Boost :

From: John Maddock (John_Maddock_at_[hidden])
Date: 2000-06-11 05:52:40


Dave,

>I realize from looking at the code that this is the case, but it doesn't
directly answer my questions above (it takes some significant thought to
figure out the answers, and I'm still not sure I have the answers right),
and it doesn't change the fact that there is a hole in the documentation. I
believe the docs give assurances that don't actually apply on all
compilers.
I want to know how I can use call_traits to write portable code (even
portable to broken compilers). This information should be made explicit.
<

Yep, OK point taken, I should have made it clear that call_traits should
only be used when the existing practice is to use the type listed in the
"Result" column. I think perhaps I should reverse these and call them
"Existing Practice" and "call_traits equivalent", then make it clear what
call_traits *may* do to fix common problems (like the reference to
reference issue). Note the use of the word "may", on broken compilers it
*cannot* fix reference to reference problems etc, so for portable code you
can't rely on that (and you always get "existing practice" in that case),
for standard complient compilers you can rely on this though.

- John.


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