|
From: Petar J. <pe...@so...> - 2018-06-21 10:02:25
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=19101881244cabaaf354340b7d2398e9154fa043 commit 19101881244cabaaf354340b7d2398e9154fa043 Author: Petar Jovanovic <mip...@gm...> Date: Thu Jun 21 11:59:20 2018 +0200 Add processing of sized delete operators into filter_libc C++14 introduces sized delete operators and Valgrind support is added by 6ef6f73. In addition, stderr filter which is used by Regtest should be able to recognize this particular form in error report (just like the other kinds of delete operators) in order to provide uniform output. Fixes memcheck/tests/mismatches failure on non C++14 builds. Patch by Aleksandar Rikalo. Diff: --- memcheck/tests/mismatches.stderr.exp | 4 ++-- tests/filter_libc | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/memcheck/tests/mismatches.stderr.exp b/memcheck/tests/mismatches.stderr.exp index af5eae0..b3659c5 100644 --- a/memcheck/tests/mismatches.stderr.exp +++ b/memcheck/tests/mismatches.stderr.exp @@ -1,5 +1,5 @@ Mismatched free() / delete / delete [] - at 0x........: operator delete(void*, unsigned long) (vg_replace_malloc.c:...) + at 0x........: ...operator delete... (vg_replace_malloc.c:...) by 0x........: main (mismatches.cpp:6) Address 0x........ is 0 bytes inside a block of size 10 alloc'd at 0x........: malloc (vg_replace_malloc.c:...) @@ -13,7 +13,7 @@ Mismatched free() / delete / delete [] by 0x........: main (mismatches.cpp:7) Mismatched free() / delete / delete [] - at 0x........: operator delete(void*, unsigned long) (vg_replace_malloc.c:...) + at 0x........: ...operator delete... (vg_replace_malloc.c:...) by 0x........: main (mismatches.cpp:13) Address 0x........ is 0 bytes inside a block of size 40 alloc'd at 0x........: ...operator new[]... (vg_replace_malloc.c:...) diff --git a/tests/filter_libc b/tests/filter_libc index 9a508b0..9607db5 100755 --- a/tests/filter_libc +++ b/tests/filter_libc @@ -31,7 +31,7 @@ while (<>) s/(at.*)operator new\[\]\(unsigned(| int| long)\)/$1...operator new[].../; s/(at.*)__builtin_delete/$1...operator delete.../; - s/(at.*)operator delete\(void\*\)/$1...operator delete.../; + s/(at.*)operator delete\(void\*(, unsigned(| int| long))?\)/$1...operator delete.../; s/(at.*)__builtin_vec_delete/$1...operator delete[].../; s/(at.*)operator delete\[\]\(void\*\)/$1...operator delete[].../; |