[Bug c++/68180] [ICE] at cp/constexpr.c:2768 in initializing __vector in a loop
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Aug 5 01:12:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68180
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |easyhack, ice-on-valid-code
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
t88.cc: In function ‘float32x4_t foo(float32x4_t)’:
t88.cc:10:33: in constexpr expansion of ‘fill(1.0e+0f)’
t88.cc:10:37: internal compiler error: tree check: expected constructor, have
vector_cst in cxx_eval_store_expression, at cp/constexpr.c:3051
constexpr float32x4_t v = fill(1.f);
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://www.cavium.com/support.html> for instructions.
This should not be hard to fix. Basically after:
ctx->values->get (object)
You convert VECTOR_CST back into a CONSTRUCTOR. Then the rest will work.
More information about the Gcc-bugs
mailing list