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)

Reply via email to