From: Nicholas Nethercote Date: Thu, 26 Feb 2009 22:38:42 +0000 (+0000) Subject: Merge r9285 (match-overrun fixes) from the DARWIN branch. X-Git-Tag: svn/VALGRIND_3_5_0~911 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b0d94067d7b3c07ab23e980b00252fc6b056ab7d;p=thirdparty%2Fvalgrind.git Merge r9285 (match-overrun fixes) from the DARWIN branch. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9286 --- diff --git a/memcheck/tests/match-overrun.c b/memcheck/tests/match-overrun.c index 4c618fb794..b859ab3a35 100644 --- a/memcheck/tests/match-overrun.c +++ b/memcheck/tests/match-overrun.c @@ -1,9 +1,12 @@ #include #include +#include "memcheck/memcheck.h" static int a1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789(void) { - return *(int *)0; + int x; + VALGRIND_MAKE_MEM_NOACCESS(&x, sizeof(x)); + return *(int *)&x; } int main(int argc, char **argv) diff --git a/memcheck/tests/match-overrun.stderr.exp b/memcheck/tests/match-overrun.stderr.exp index 4ff0e7c787..e69de29bb2 100644 --- a/memcheck/tests/match-overrun.stderr.exp +++ b/memcheck/tests/match-overrun.stderr.exp @@ -1,16 +0,0 @@ - - -Process terminating with default action of signal 11 (SIGSEGV) - Access not within mapped region at address 0x........ - at 0x........: a1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 (match-overrun.c:6) - by 0x........: main (match-overrun.c:11) - If you believe this happened as a result of a stack overflow in your - program's main thread (unlikely but possible), you can try to increase - the size of the main thread stack using the --main-stacksize= flag. - The main thread stack size used in this run was .... - -ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) -malloc/free: in use at exit: ... bytes in ... blocks. -malloc/free: ... allocs, ... frees, ... bytes allocated. -For a detailed leak analysis, rerun with: --leak-check=yes -For counts of detected errors, rerun with: -v diff --git a/memcheck/tests/match-overrun.supp b/memcheck/tests/match-overrun.supp index e69ec8a5ab..2f5893c20b 100644 --- a/memcheck/tests/match-overrun.supp +++ b/memcheck/tests/match-overrun.supp @@ -2,4 +2,5 @@ test Memcheck:Addr4 fun:a123456789* + fun:main } diff --git a/memcheck/tests/match-overrun.vgtest b/memcheck/tests/match-overrun.vgtest index 85ca973973..d189ed2dab 100644 --- a/memcheck/tests/match-overrun.vgtest +++ b/memcheck/tests/match-overrun.vgtest @@ -1,3 +1,3 @@ prog: match-overrun -vgopts: --suppressions=match-overrun.supp +vgopts: -q --suppressions=match-overrun.supp stderr_filter: filter_allocs