On 04/05/16 12:40, Jason Merrill wrote:
It's not clear to me that we really need a TARGET_EXPR for vector values. Since one element of a vector can't refer to another, we don't need the ctx->ctor handling. Perhaps we should handle vectors like we do PMF types in cxx_eval_bare_aggregate?
That may be abstractly better, but we do currently wrap constructors in target_exprs for vector compound_literals (which is what I was following). See the get_target_expr_sfinae calls in finish_compound_literal for instance. That happens for the '(v4si){(0, 0)}' subexpression of the testcase.
nathan