John H. Spicer wrote:
On Mar 11, 2009, at 12:34 PM, Jason Merrill wrote:
decltype (*(T*)0 + *(T*)0) f (T t); and auto f(T t) -> decltype (t + t)
If your program uses both forms of that declaration it is already ill-formed because the declarations are functionally equivalent but not equivalent by the rules in 14.5.6.1.
Yes, but I like the idea of giving library implementers the ability to switch between the two forms without affecting binary compatibility. But perhaps that's just a one-time transition issue.
Jason