
"Jonathan Turkanis" wrote: _______________________________________________
21. test lzo.cpp refers to non-existing boost/io/lzo.hpp.
Right. I got rid of it because of copyright issues.
That's unfortunate. Maybe it could be there as example.
Doesn't the boost license policy cover examples, too?
I have absolutely no clue. I think LZO quality is so big that it should be supported. _______________________________________________
22. io/file.hpp: what is exactly reason to have pimpl in basic_file_resource class?
Exception safety....
So, to answer your question: basic_file_resource wraps a basic_filebuf, which is generally non-copyable, so I used a shared_ptr.
Hmmm. Would it be possible to use intrusive_ptr here?
I think so. Why do you think it's important?
No thread locking, one dynamic allocation less, less space eaten, more cache coherence. Could be handy if one uses lot of filters of fine granularity. ---------------------- One more possible optimization for Borland: empty class in BCB by default has sizeof == 8 bytes.While this can be changed by pragmas one may also write: class exmpty_one { #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) char dummy_; // BCB would by default create empty class with size == 8 #endif }; It is not possible to go better with Borland than this. If there are empty classes in Iostreams this should be applied. I'll try to search sources if/where this could be done. /Pavel