/memcheck/tests/sigkill
/memcheck/tests/signal2
/memcheck/tests/sigprocmask
+/memcheck/tests/sized_delete
/memcheck/tests/stack_changes
/memcheck/tests/stack_switch
/memcheck/tests/static_malloc
filter_strchr \
filter_varinfo3 \
filter_memcheck \
- filter_overlaperror
+ filter_overlaperror \
+ filter_sized_delete
noinst_HEADERS = leak.h
sigkill.stderr.exp-glibc-2.28 sigkill.vgtest \
signal2.stderr.exp signal2.stdout.exp signal2.vgtest \
sigprocmask.stderr.exp sigprocmask.stderr.exp2 sigprocmask.vgtest \
+ sized_delete.stderr.exp sized_delete.stderr.exp-x86 sized_delete.vgtest \
static_malloc.stderr.exp static_malloc.vgtest \
stpncpy.vgtest stpncpy.stderr.exp stpncpy.stdout.exp \
strchr.stderr.exp strchr.stderr.exp2 strchr.stderr.exp3 strchr.vgtest \
sendmsg \
sh-mem sh-mem-random \
sigaltstack signal2 sigprocmask static_malloc sigkill \
+ sized_delete \
strchr \
str_tester \
supp_unknown supp1 supp2 suppfree \
sendmsg_LDADD = -lsocket -lnsl
endif
+sized_delete_SOURCES = sized_delete.cpp
+sized_delete_CXXFLAGS = $(AM_CXXFLAGS) -fsized-deallocation
+
str_tester_CFLAGS = $(AM_CFLAGS) -Wno-shadow \
@FLAG_W_NO_MEMSET_TRANSPOSED_ARGS@
--- /dev/null
+class MyClass {
+ int i;
+
+};
+
+int main() {
+ MyClass* myClass = new MyClass();
+ delete myClass;
+ MyClass* myClass5 = new MyClass[5];
+ operator delete[](myClass5, 5U*sizeof(MyClass));
+ //delete [] myClass5;
+}
--- /dev/null
+prog: sized_delete
+prereq: test -e sized_delete
+vgopts: -q "--trace-malloc=yes" --show-mismatched-frees=yes
+stderr_filter: filter_sized_delete