1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
Index: memcheck/mc_main.c
===================================================================
--- memcheck/mc_main.c (revision 10771)
+++ memcheck/mc_main.c (working copy)
@@ -4658,6 +4658,7 @@
LeakCheckMode MC_(clo_leak_check) = LC_Summary;
VgRes MC_(clo_leak_resolution) = Vg_HighRes;
Bool MC_(clo_show_reachable) = False;
+Bool MC_(clo_show_possible) = True;
Bool MC_(clo_workaround_gcc296_bugs) = False;
Int MC_(clo_malloc_fill) = -1;
Int MC_(clo_free_fill) = -1;
@@ -4711,6 +4712,7 @@
if VG_BOOL_CLO(arg, "--partial-loads-ok", MC_(clo_partial_loads_ok)) {}
else if VG_BOOL_CLO(arg, "--show-reachable", MC_(clo_show_reachable)) {}
+ else if VG_BOOL_CLO(arg, "--show-possible", MC_(clo_show_possible)) {}
else if VG_BOOL_CLO(arg, "--workaround-gcc296-bugs",
MC_(clo_workaround_gcc296_bugs)) {}
@@ -4776,6 +4778,7 @@
" --leak-check=no|summary|full search for memory leaks at exit? [summary]\n"
" --leak-resolution=low|med|high differentiation of leak stack traces [high]\n"
" --show-reachable=no|yes show reachable blocks in leak check? [no]\n"
+" --show-possible=no|yes show possibly lost blocks in leak check? [yes]\n"
" --undef-value-errors=no|yes check for undefined value errors [yes]\n"
" --track-origins=no|yes show origins of undefined values? [no]\n"
" --partial-loads-ok=no|yes too hard to explain here; see manual [no]\n"
Index: memcheck/mc_include.h
===================================================================
--- memcheck/mc_include.h (revision 10771)
+++ memcheck/mc_include.h (working copy)
@@ -394,6 +394,9 @@
/* In leak check, show reachable-but-not-freed blocks? default: NO */
extern Bool MC_(clo_show_reachable);
+/* In leak check, show possibly-lost blocks? default: YES */
+extern Bool MC_(clo_show_possible);
+
/* Assume accesses immediately below %esp are due to gcc-2.96 bugs.
* default: NO */
extern Bool MC_(clo_workaround_gcc296_bugs);
Index: memcheck/mc_leakcheck.c
===================================================================
--- memcheck/mc_leakcheck.c (revision 10771)
+++ memcheck/mc_leakcheck.c (working copy)
@@ -843,7 +843,7 @@
//
lr = lr_array[i];
count_as_error = Unreached == lr->key.state ||
- Possible == lr->key.state;
+ (MC_(clo_show_possible) && Possible == lr->key.state);
print_record = is_full_check &&
( MC_(clo_show_reachable) || count_as_error );
is_suppressed =
@@ -1113,4 +1113,3 @@
/*--------------------------------------------------------------------*/
/*--- end ---*/
/*--------------------------------------------------------------------*/
-
|