
On Tue, Oct 12, 2010 at 5:39 PM, Peter Dimov <pdimov@pdimov.com> wrote:
David Abrahams wrote:
Is *that* the core issue here? Because it seems like the issue has been about various other things earlier in this conversation.
The core issue, if I remember correctly, is that when a library uses boost::function internally without ever calling it while NULL and the user compiles with exceptions disabled, he needs to supply a definition of boost::throw_exception even though it will never be called.
Yes, that was the original complaint. The efficiency issue was not the motivation of the feature request, as I understand; it was the coupling issue. But the coupling with Boost.Exception is only there to implement the strong exception safety guarantee of operator(). I thought the simplest solution would be to remove the guarantee, which the user did not want to begin with. Daniel Walker