re PR sanitizer/63813 ([UBSAN] ICE in ubsan_type_descriptor, at ubsan.c:346)
authorJakub Jelinek <jakub@redhat.com>
Tue, 18 Nov 2014 22:15:42 +0000 (23:15 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 18 Nov 2014 22:15:42 +0000 (23:15 +0100)
commitc39a5e99829ae233bd3e8ee89a6b7d986adbb1c8
tree3100f945556d63aeaa058af9f42a2c3172835edc
parentd236c8038dfe895644d47100f68b8ca198d42b57
re PR sanitizer/63813 ([UBSAN] ICE in ubsan_type_descriptor, at ubsan.c:346)

PR sanitizer/63813
* c-ubsan.c (ubsan_maybe_instrument_reference_or_call): Change type
argument to ptype, set type to TREE_TYPE (ptype).  Don't call
get_pointer_alignment for non-pointers.  Use ptype, or if it is
reference type, corresponding pointer type, as type of kind
argument.
(ubsan_maybe_instrument_reference,
ubsan_maybe_instrument_member_call): Adjust callers.

* g++.dg/ubsan/pr63813.C: New test.

From-SVN: r217741
gcc/c-family/ChangeLog
gcc/c-family/c-ubsan.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ubsan/pr63813.C [new file with mode: 0644]