Boost logo

Boost :

Subject: Re: [boost] [threads] making parts of Boost.Threads header-only
From: Patrick Mihelich (patrick.mihelich_at_[hidden])
Date: 2009-04-09 18:09:27


I understand the general objections to putting code in header files, but can
we put dogma aside for a moment? Are we all actually looking at the proposed
change? exceptions.cpp contains a handful of trivial function definitions,
all of them empty or 1 line. Opposing this change on the basis of compile
time or code bloat strikes me as ridiculous when the actual effect would be
approximately zero.

I see Emil's point about non-inline functions being occasionally useful for
debugging, but it's entirely incidental to the purpose of the library.
Anyway it's quite a stretch in this particular case. If an exception is
being thrown you already know where the problem is showing up. Why not just
use a debugger? Has anyone ever actually had occasion to abuse
exceptions.cpp in this way?

In the current situation, the lock/mutex headers are unnecessarily coupled
to the Threads shared library. This is very inconvenient for users and other
Boost libraries (hence lightweight_mutex). It can be the difference between
having to compile/install Boost and integrate it into your build system
or... not. And for what? A few empty function definitions?

The only issue raised that I find at all convincing is Anthony's DLL
boundary problem, but I'd be surprised if there isn't a solution to that.
Barring any such technical hurdle, I think making exceptions.hpp header-only
is a no-brainer.

Patrick

On Thu, Apr 9, 2009 at 12:32 PM, <k-oli_at_[hidden]> wrote:

> Please, can we stop to move code from cpp-files into headers?!
> It unnecessarily increases code bloading - I get binaries of multiple MBs
> size.
>
> Oliver
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>


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