Re: RFC: Make diagnostics for C++ reference binding more consistent

2016-08-05 Thread Jason Merrill
OK. On Fri, Aug 5, 2016 at 5:08 AM, Jonathan Wakely wrote: > On 27/07/16 18:06 -0400, Jason Merrill wrote: >> >> On Wed, Jul 27, 2016 at 8:05 AM, Jonathan Wakely >> wrote: >>> >>> Consider: >>> >>> template T declval(); >>> >>> int& r1 = declval(); >>> int&& r2 = declval(); >>> int& r3 = declval

Re: RFC: Make diagnostics for C++ reference binding more consistent

2016-08-05 Thread Jonathan Wakely
On 27/07/16 18:06 -0400, Jason Merrill wrote: On Wed, Jul 27, 2016 at 8:05 AM, Jonathan Wakely wrote: Consider: template T declval(); int& r1 = declval(); int&& r2 = declval(); int& r3 = declval(); This produces three quite different errors: refs.cc:3:25: error: invalid initialization of

Re: RFC: Make diagnostics for C++ reference binding more consistent

2016-07-27 Thread Jason Merrill
On Wed, Jul 27, 2016 at 8:05 AM, Jonathan Wakely wrote: > Consider: > > template T declval(); > > int& r1 = declval(); > int&& r2 = declval(); > int& r3 = declval(); > > > This produces three quite different errors: > > > refs.cc:3:25: error: invalid initialization of non-const reference of type >

RFC: Make diagnostics for C++ reference binding more consistent

2016-07-27 Thread Jonathan Wakely
Consider: template T declval(); int& r1 = declval(); int&& r2 = declval(); int& r3 = declval(); This produces three quite different errors: refs.cc:3:25: error: invalid initialization of non-const reference of type 'int&' from an rvalue of type 'int' int& r1 = declval(); ~