Fix 284540 and 307465
284540 Memcheck shouldn't count suppressions matching still-reachable allocations
307465 --show-possibly-lost=no should bring down the error count / exit code

Using the options --show-leak-kinds=kind1,kind2,.. and
--errors-for-leak-kinds=kind1,kind2,.., each leak kind (definite, indirect,
possible, reachable) can now be individually reported and/or counted as
an error.
In a leak suppression entry, an optional line 'match-leak-kinds:'
controls which leak kinds are suppressed by this entry.
This is a.o. useful to avoid definite leaks being "catched"
by a suppression entry aimed at suppressing possibly lost blocks.
Default behaviour is the same as 3.8.1

Old args (--show-reachable and --show-possibly-lost) are still accepted.

Addition of a new test (memcheck/tests/lks) testing the new args
and the new suppression line.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13170 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/gdbserver_tests/mchelp.stdoutB.exp b/gdbserver_tests/mchelp.stdoutB.exp
index 24b27c8..32f9ff7 100644
--- a/gdbserver_tests/mchelp.stdoutB.exp
+++ b/gdbserver_tests/mchelp.stdoutB.exp
@@ -22,12 +22,15 @@
   check_memory [addressable|defined] <addr> [<len>]
         check that <len> (or 1) bytes at <addr> have the given accessibility
             and outputs a description of <addr>
-  leak_check [full*|summary] [reachable|possibleleak*|definiteleak]
+  leak_check [full*|summary]
+                [kinds kind1,kind2,...|reachable|possibleleak*|definiteleak]
                 [increased*|changed|any]
                 [unlimited*|limited <max_loss_records_output>]
             * = defaults
+        where kind is one of definite indirect possible reachable all none
         Examples: leak_check
                   leak_check summary any
+                  leak_check full kinds indirect,possible
                   leak_check full reachable any limited 100
   block_list <loss_record_nr>
         after a leak search, shows the list of blocks of <loss_record_nr>
@@ -69,12 +72,15 @@
   check_memory [addressable|defined] <addr> [<len>]
         check that <len> (or 1) bytes at <addr> have the given accessibility
             and outputs a description of <addr>
-  leak_check [full*|summary] [reachable|possibleleak*|definiteleak]
+  leak_check [full*|summary]
+                [kinds kind1,kind2,...|reachable|possibleleak*|definiteleak]
                 [increased*|changed|any]
                 [unlimited*|limited <max_loss_records_output>]
             * = defaults
+        where kind is one of definite indirect possible reachable all none
         Examples: leak_check
                   leak_check summary any
+                  leak_check full kinds indirect,possible
                   leak_check full reachable any limited 100
   block_list <loss_record_nr>
         after a leak search, shows the list of blocks of <loss_record_nr>