aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2017-04-25 01:27:41 +0100
committerPedro Alves <palves@redhat.com>2017-04-25 01:46:19 +0100
commitb0b92aeb3828219075fce23543fb39fee8608e99 (patch)
treeef03fd94c57f25008280f5c7597fcdec8834188a /ChangeLog
parent16c4d54a71d8052988ed9c8005a03a7f934245f4 (diff)
downloadgdb-b0b92aeb3828219075fce23543fb39fee8608e99.zip
gdb-b0b92aeb3828219075fce23543fb39fee8608e99.tar.gz
gdb-b0b92aeb3828219075fce23543fb39fee8608e99.tar.bz2
Poison non-POD memset & non-trivially-copyable memcpy/memmove
This patch catches invalid initialization of non-POD types with memset, at compile time. This is what I used to catch the problems fixed by the previous patches in the series: $ make -k 2>&1 | grep "deleted function" src/gdb/breakpoint.c:951:53: error: use of deleted function ‘void* memset(T*, int, size_t) [with T = bp_location; <template-parameter-1-2> = void; size_t = long unsigned int]’ src/gdb/breakpoint.c:7325:32: error: use of deleted function ‘void* memset(T*, int, size_t) [with T = bp_location; <template-parameter-1-2> = void; size_t = long unsigned int]’ src/gdb/btrace.c:1153:42: error: use of deleted function ‘void* memset(T*, int, size_t) [with T = btrace_insn; <template-parameter-1-2> = void; size_t = long unsigned int]’ ... gdb/ChangeLog: 2017-04-25 Pedro Alves <palves@redhat.com> * common/common-defs.h: Include "common/poison.h". * common/function-view.h: (Not, Or, Requires): Move to traits.h and adjust. * common/poison.h: New file. * common/traits.h: Include <type_traits>. (Not, Or, Requires): New, moved from common/function-view.h.
Diffstat (limited to 'ChangeLog')
0 files changed, 0 insertions, 0 deletions