* semantics.c (finish_compound_literal): Handle references.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172286
138bc75d-0d04-0410-961f-
82ee72b054a4
2011-04-11 Jason Merrill <jason@redhat.com>
PR c++/48535
+ * semantics.c (finish_compound_literal): Handle references.
+
+ PR c++/48535
* semantics.c (finish_compound_literal): Take complain parm.
(build_lambda_object): Adjust.
* cp-tree.h: Adjust.
if (type == error_mark_node)
return error_mark_node;
+ if (TREE_CODE (type) == REFERENCE_TYPE)
+ {
+ compound_literal
+ = finish_compound_literal (TREE_TYPE (type), compound_literal,
+ complain);
+ return cp_build_c_cast (type, compound_literal, complain);
+ }
+
if (!TYPE_OBJ_P (type))
{
if (complain & tf_error)