]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/c-family/ChangeLog
2012-10-09 Marc Glisse <marc.glisse@inria.fr>
authorglisse <glisse@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 9 Oct 2012 06:18:29 +0000 (06:18 +0000)
committerglisse <glisse@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 9 Oct 2012 06:18:29 +0000 (06:18 +0000)
commit41ed701aa7962118609ab7a37c741dd165a1e1c0
tree41770fbb2dff0d56518b79bce3dd01c52d1b2759
parent913a7575316e16a95adf81eb285e4a77bd66b0a4
2012-10-09  Marc Glisse  <marc.glisse@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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192238 138bc75d-0d04-0410-961f-82ee72b054a4
19 files changed:
gcc/ChangeLog
gcc/c-family/ChangeLog
gcc/c-family/c-common.c
gcc/c-family/c-common.h
gcc/c/ChangeLog
gcc/c/Make-lang.in
gcc/c/c-typeck.c
gcc/cp/ChangeLog
gcc/cp/typeck.c
gcc/fold-const.c
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/convert-vec-1.c [moved from gcc/testsuite/gcc.dg/convert-vec-1.c with 100% similarity]
gcc/testsuite/c-c++-common/init-vec-1.c [moved from gcc/testsuite/gcc.dg/init-vec-1.c with 68% similarity]
gcc/testsuite/c-c++-common/scal-to-vec1.c [moved from gcc/testsuite/gcc.dg/scal-to-vec1.c with 60% similarity]
gcc/testsuite/c-c++-common/scal-to-vec2.c [moved from gcc/testsuite/gcc.dg/scal-to-vec2.c with 100% similarity]
gcc/testsuite/c-c++-common/torture/vector-shift1.c [moved from gcc/testsuite/gcc.c-torture/execute/vector-shift1.c with 93% similarity]
gcc/testsuite/c-c++-common/vector-scalar.c [new file with mode: 0644]
gcc/testsuite/g++.dg/ext/vector18.C [new file with mode: 0644]
gcc/testsuite/g++.dg/ext/vector5.C