Subject: Re: [boost] Should Boost adopt pimpl/d-pointer as much as it can?
From: Artyom (artyomtnk_at_[hidden])
Date: 2010-03-22 01:36:25


> I believe asio is header-only because the author finds that > more practical to use and deploy. > > It is him you should try to convince otherwise. > It is not just ASIO, but many other libraries. > > > Result (liked executable size with gcc-4.3): > > > > Build   Size (-Os stripped) > > Asio:   245K > > Pimpl:  190K > > Could you try this while whole program optimization (gcc > 4.5+) turned on and tell me whether there is still a > difference? > 1. I do turned on full optimization (for size -Os), 2. 4.3 is quite latest and I don't have access to 4.5 (it is not even released yet...) 3. The issue is not compiler but maybe linker itself. What happens: Each sample server I compiled implemented its own "select loop", wait queue, even dispatcher, mutexes etc, etc. Each module compiles independently, it does not know if there is another module which implements same routines -- so there is lots of work for linker to find shared routines and merge them. I'm even not sure that according to standard it suppose to do such things. Artyom