re PR c++/71537 (GCC rejects consetxpr boolean conversions and comparisons on the...
authorJakub Jelinek <jakub@redhat.com>
Tue, 6 Dec 2016 09:23:51 +0000 (10:23 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 6 Dec 2016 09:23:51 +0000 (10:23 +0100)
commit66972191ee05c5dd2d02e5d062fe1c942e42fcd7
tree7a92a285d47f865cf7dc7522c6b591159d6a2013
parentbf2d0849a360376182b796042fedaa018b87d605
re PR c++/71537 (GCC rejects consetxpr boolean conversions and comparisons on the result of pointer arithmetic.)

2016-12-06  Jakub Jelinek  <jakub@redhat.com>

PR c++/71537
* fold-const-call.c (fold_const_call_1): Remove memchr handling here.
(fold_const_call) <case CFN_BUILT_IN_STRNCMP,
case CFN_BUILT_IN_STRNCASECMP>: Formatting improvements.
(fold_const_call) <case CFN_BUILT_IN_MEMCMP>: Likewise.  If s2 is 0
and arguments have no side-effects, return 0.
(fold_const_call): Handle CFN_BUILT_IN_MEMCHR.

* g++.dg/cpp0x/constexpr-memchr.C: New test.

From-SVN: r243285
gcc/ChangeLog
gcc/fold-const-call.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/constexpr-memchr.C [new file with mode: 0644]