diff options
author | Jakub Jelinek <jakub@redhat.com> | 2020-02-05 23:35:08 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2020-02-05 23:35:08 +0100 |
commit | 5a8ad97b6e4823d4ded00a3ce8d80e4bf93368d4 (patch) | |
tree | c38a33ff26fed72b473b3a6031fba7c67aa6767b /libcpp/include | |
parent | d10cddeaad2a315c114063b7c1ff11c6a356ab65 (diff) | |
download | gcc-5a8ad97b6e4823d4ded00a3ce8d80e4bf93368d4.zip gcc-5a8ad97b6e4823d4ded00a3ce8d80e4bf93368d4.tar.gz gcc-5a8ad97b6e4823d4ded00a3ce8d80e4bf93368d4.tar.bz2 |
c++: Mark __builtin_convertvector operand as read [PR93557]
In C++ we weren't calling mark_exp_read on the __builtin_convertvector first
argument. I guess it could misbehave even with lambda implicit captures.
Fixed by calling decay_conversion on the argument, we use the argument as
rvalue so we want the standard lvalue to rvalue conversions, but as the
argument must be a vector type, e.g. integral promotions aren't really
needed.
2020-02-05 Jakub Jelinek <jakub@redhat.com>
PR c++/93557
* semantics.c (cp_build_vec_convert): Call decay_conversion on arg
prior to passing it to c_build_vec_convert.
* c-c++-common/Wunused-var-17.c: New test.
Diffstat (limited to 'libcpp/include')
0 files changed, 0 insertions, 0 deletions