http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54427
--- Comment #9 from Marc Glisse <glisse at gcc dot gnu.org> 2012-10-09 06:18:35 UTC --- Author: glisse Date: Tue Oct 9 06:18:29 2012 New Revision: 192238 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192238 Log: 2012-10-09 Marc Glisse <marc.gli...@inria.fr> PR c++/54427 c/ * c-typeck.c: Include c-common.h. (enum stv_conv): Moved to c-common.h. (scalar_to_vector): Moved to c-common.c. (build_binary_op): Adapt to scalar_to_vector's new prototype. * Make-lang.in: c-typeck.c depends on c-common.h. c-family/ * c-common.c (scalar_to_vector): Moved from c-typeck.c. Support more operations. Make error messages optional. * c-common.h (enum stv_conv): Moved from c-typeck.c. (scalar_to_vector): Declare. cp/ * typeck.c (cp_build_binary_op): Handle mixed scalar-vector operations. [LSHIFT_EXPR, RSHIFT_EXPR]: Likewise. gcc/ * fold-const.c (fold_binary_loc): Use build_zero_cst instead of build_int_cst for a potential vector. testsuite/ * c-c++-common/vector-scalar.c: New testcase. * g++.dg/ext/vector18.C: New testcase. * g++.dg/ext/vector5.C: This is not an error anymore. * gcc.dg/init-vec-1.c: Move ... * c-c++-common/init-vec-1.c: ... here. Adapt error message. * gcc.c-torture/execute/vector-shift1.c: Move ... * c-c++-common/torture/vector-shift1.c: ... here. * gcc.dg/scal-to-vec1.c: Move ... * c-c++-common/scal-to-vec1.c: ... here. Avoid narrowing for C++11. Adapt error messages. * gcc.dg/convert-vec-1.c: Move ... * c-c++-common/convert-vec-1.c: ... here. * gcc.dg/scal-to-vec2.c: Move ... * c-c++-common/scal-to-vec2.c: ... here. Added: trunk/gcc/testsuite/c-c++-common/convert-vec-1.c - copied unchanged from r191610, trunk/gcc/testsuite/gcc.dg/convert-vec-1.c trunk/gcc/testsuite/c-c++-common/init-vec-1.c - copied, changed from r191610, trunk/gcc/testsuite/gcc.dg/init-vec-1.c trunk/gcc/testsuite/c-c++-common/scal-to-vec1.c - copied, changed from r191610, trunk/gcc/testsuite/gcc.dg/scal-to-vec1.c trunk/gcc/testsuite/c-c++-common/scal-to-vec2.c - copied unchanged from r191610, trunk/gcc/testsuite/gcc.dg/scal-to-vec2.c trunk/gcc/testsuite/c-c++-common/torture/vector-shift1.c - copied, changed from r191610, trunk/gcc/testsuite/gcc.c-torture/execute/vector-shift1.c trunk/gcc/testsuite/c-c++-common/vector-scalar.c (with props) trunk/gcc/testsuite/g++.dg/ext/vector18.C (with props) Removed: trunk/gcc/testsuite/gcc.c-torture/execute/vector-shift1.c trunk/gcc/testsuite/gcc.dg/convert-vec-1.c trunk/gcc/testsuite/gcc.dg/init-vec-1.c trunk/gcc/testsuite/gcc.dg/scal-to-vec1.c trunk/gcc/testsuite/gcc.dg/scal-to-vec2.c Modified: trunk/gcc/ChangeLog trunk/gcc/c-family/ChangeLog trunk/gcc/c-family/c-common.c trunk/gcc/c-family/c-common.h trunk/gcc/c/ChangeLog trunk/gcc/c/Make-lang.in trunk/gcc/c/c-typeck.c trunk/gcc/cp/ChangeLog trunk/gcc/cp/typeck.c trunk/gcc/fold-const.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/ext/vector5.C Propchange: trunk/gcc/testsuite/c-c++-common/vector-scalar.c ('svn:eol-style' added) Propchange: trunk/gcc/testsuite/c-c++-common/vector-scalar.c ('svn:keywords' added) Propchange: trunk/gcc/testsuite/g++.dg/ext/vector18.C ('svn:eol-style' added) Propchange: trunk/gcc/testsuite/g++.dg/ext/vector18.C ('svn:keywords' added)