[C++] Protect call to copy_attributes_to_builtin (PR91505)
authorRichard Sandiford <richard.sandiford@arm.com>
Wed, 21 Aug 2019 13:59:31 +0000 (13:59 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Wed, 21 Aug 2019 13:59:31 +0000 (13:59 +0000)
commit077eb7af6e296e45e8f333f799170685b4d77b03
treed46a050af0f61c366729b5daee6cc2e9cf875fea
parentd6dea10acfd9d775f260a2e7c319bb1ee64c0af0
[C++] Protect call to copy_attributes_to_builtin (PR91505)

copy_attributes_to_builtin only handles BUILT_IN_NORMAL, but C++ was
calling it immediately after the:

  if (DECL_BUILT_IN_CLASS (newdecl) == BUILT_IN_NORMAL)

block.  The corresponding C code calls it inside the block instead.

2019-08-21  Richard Sandiford  <richard.sandiford@arm.com>

gcc/cp/
PR c++/91505
* decl.c (duplicate_decls): Call copy_attributes_to_builtin inside
the BUILT_IN_NORMAL block rather than afterward.

gcc/testsuite/
PR c++/91505
* g++.target/i386/crc32-4.C: New test.

From-SVN: r274799
gcc/cp/ChangeLog
gcc/cp/decl.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.target/i386/crc32-4.C [new file with mode: 0644]