|
Proto : |
Subject: Re: [proto] for your review: intro to a series of blog posts about proto and phoenix v3
From: Eric Niebler (eric_at_[hidden])
Date: 2010-08-10 12:56:31
On 8/10/2010 12:03 PM, Thomas Heller wrote:
> On Tue, Aug 10, 2010 at 5:21 PM, Eric Niebler <eric_at_[hidden]> wrote:
>> On 8/10/2010 11:14 AM, Robert Jones wrote:
>>> When you get this
>>> stuff wrong, what do the error messages look like? Boost.Bind &
>>> Boost.Lambda errors are already enough to send most of us running for
>>> the hills,
>>
>> (I've held back a whole rant about how long template
>> error messages are library bugs and should be filed as such. That's a
>> whole other blog post.)
>
> I think we see a great improvement with static_assert in C++0x!
Undoubtedly true, but I can't confirm firsthand. I don't do any C++0x
programming.
> And we are potentially able to reduce error message if SFINAE is
> applied more often, with the disadvantage of losing information on
> what failed.
I disagree about SFINAE. I think it leads to horrible error messages
like, "No function overload matched. Here are the signatures of the (5,
20, 100+) functions that failed to match (and I'm not going to tell you
why)". I've had better luck with tag dispatching, with a catch-all
handler that asserts with a "if-you-get-here-it-means-this" message.
But all that will go in my rant. ;-)
-- Eric Niebler BoostPro Computing http://www.boostpro.com
Proto list run by eric at boostpro.com