On Tuesday, 16 April 2013 at 20:21:00 UTC, Peter Alexander wrote:
This is the point I have a problem with:
2.2. One cannot opt out of nothrow or pure with auto
functions.
This argument has one solid answer: don't use auto when the
need is to specify an attribute pattern explicitly.
I find this unacceptable. Thanks to the proliferation of
template code in D, it is often rather difficult to spell out
return types. Indeed, this is part of the original reason for
auto's existence. Denying return type deduction for this use
case is a major inconvenience.
How frequently do you write a non-templated function which
returns a complex template type? It isn't something I really
think about, but I'm pretty sure if I am returning a complex
template type I've already got the function a template.