Subject: Re: [boost] [function] "paranoia" vs efficiency
From: Domagoj Saric (dsaritz_at_[hidden])
Date: 2009-11-07 12:03:44
"David Abrahams" <dave_at_[hidden]> wrote in message
> I'm very surprised to hear that... perhaps you used the default MSVC++
> settings which IIRC don't include RTTI?
RTTI defaults to "On" since msvc++ 8.0 ...
...and yes with rtti on boost::function<> still produced a larger binary...
msvc++ tr1 function<> did add one or two rtti records more (if rtti is left
enabled) but, as i elaborated in my first post, it turns out this is actually a
less important issue (relatively speaking)...maybe it would become more
important for projects/binaries with a large number of different function<>
instantiations (comparing to the relatively few i tested with) because the much
more complex/'bloated' boost::function<> 'throw bad_function_call' machinery
(as compared to the same 'machinery' in mscv++ tr1 function<>) would become
less important (as atleast some parts of it are 'allocated' only once/not part
of the template)...but the template bloat issues i outlined in my first post
would still prevail significantly (over a larger number of rtti records, which
can be turned off if you do not use rtti otherwise)...
ps. i don't know, is a topic name change in order? like a request for a mini
review or something...
-- "That men do not learn very much from the lessons of history is the most important of all the lessons of history." Aldous Huxley
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk