mirror of git://gcc.gnu.org/git/gcc.git
DR 799
DR 799 * typeck.c (build_reinterpret_cast_1): reinterpret_cast to the same scalar type is an rvalue. From-SVN: r217276
This commit is contained in:
parent
e19264356f
commit
6d1301f28c
|
|
@ -1,5 +1,9 @@
|
|||
2014-11-09 Jason Merrill <jason@redhat.com>
|
||||
|
||||
DR 799
|
||||
* typeck.c (build_reinterpret_cast_1): reinterpret_cast to the
|
||||
same scalar type is an rvalue.
|
||||
|
||||
DR 2007
|
||||
* call.c (build_new_op_1): Don't do non-class lookup for =, -> or [].
|
||||
|
||||
|
|
|
|||
|
|
@ -6898,7 +6898,7 @@ build_reinterpret_cast_1 (tree type, tree expr, bool c_cast_p,
|
|||
|| TYPE_PTR_OR_PTRMEM_P (type))
|
||||
&& same_type_p (type, intype))
|
||||
/* DR 799 */
|
||||
return fold_if_not_in_template (build_nop (type, expr));
|
||||
return rvalue (expr);
|
||||
else if ((TYPE_PTRFN_P (type) && TYPE_PTRFN_P (intype))
|
||||
|| (TYPE_PTRMEMFUNC_P (type) && TYPE_PTRMEMFUNC_P (intype)))
|
||||
return fold_if_not_in_template (build_nop (type, expr));
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
struct Y { Y(int &); };
|
||||
|
||||
int v;
|
||||
Y y1(reinterpret_cast<int>(v));
|
||||
Y y1(reinterpret_cast<int>(v)); // { dg-error "" }
|
||||
|
|
|
|||
Loading…
Reference in New Issue