c-family: copy attribute diagnostic fixes [PR113262]
commitc9fc7f398e8b330ff12ec8a29bfa058b6daf6624
authorJakub Jelinek <jakub@redhat.com>
Tue, 9 Jan 2024 14:37:04 +0000 (9 15:37 +0100)
committerJakub Jelinek <jakub@redhat.com>
Tue, 9 Jan 2024 14:37:04 +0000 (9 15:37 +0100)
tree77c9765393f5e14f3b9339005ac984afdecdf65c
parent80bb94e88faaadd4d6f008fececb46214dc89e9f
c-family: copy attribute diagnostic fixes [PR113262]

The copy attributes is allowed on decls as well as types and even has
checks whether decl (set to *node) is DECL_P or TYPE_P, but for diagnostics
unconditionally uses DECL_SOURCE_LOCATION (decl), which obviously only works
if it applies to a decl.

2024-01-09  Jakub Jelinek  <jakub@redhat.com>

PR c/113262
* c-attribs.cc (handle_copy_attribute): Don't use
DECL_SOURCE_LOCATION (decl) if decl is not DECL_P, use input_location
instead.  Formatting fixes.

* gcc.dg/pr113262.c: New test.
gcc/c-family/c-attribs.cc
gcc/testsuite/gcc.dg/pr113262.c [new file with mode: 0644]