Advance the head to 3.16.0.GIT.
[valgrind.git] / gdbserver_tests / mcleak.stdinB.gdb
blob437556ab66f22c46a955d91099adf30b7d7f80ff
1 # connect gdb to Valgrind gdbserver:
2 target remote | ./vgdb --wait=60 --vgdb-prefix=./vgdb-prefix-mcleak
3 echo vgdb launched process attached\n
4 monitor v.set vgdb-error 999999
7 # insert break:
8 break breakme
10 # continue till each break and execute via gdb the leak search as done in the C code.
11 continue
14 #   fprintf(stderr, "expecting details 10 bytes reachable\n"); fflush(stderr); breakme();
16 monitor leak_check full reachable any
17 continue
18 #   VALGRIND_DO_LEAK_CHECK;
20 #   fprintf(stderr, "expecting to have NO details\n"); fflush(stderr);
22 monitor leak_check full reachable increased
23 continue
24 #   VALGRIND_DO_ADDED_LEAK_CHECK;
26 #   b10--; // lose b10
27 #   b21 = malloc (21);
28 #   fprintf(stderr, "expecting details +10 bytes lost, +21 bytes reachable\n"); fflush(stderr); breakme();
30 monitor leak_check full reachable increased
31 continue
32 #   VALGRIND_DO_ADDED_LEAK_CHECK;
34 #   for (i = 0; i < 2; i ++)
35 #      b32_33[i] = malloc (32+i);
36 #   fprintf(stderr, "expecting details +65 bytes reachable\n"); fflush(stderr); breakme();
38 monitor leak_check full reachable increased
39 continue
40 #   VALGRIND_DO_ADDED_LEAK_CHECK;
42 #   fprintf(stderr, "expecting to have NO details\n"); fflush(stderr); breakme();
44 monitor leak_check full reachable increased
45 continue
46 #   VALGRIND_DO_ADDED_LEAK_CHECK;
48 #   b10++;
49 #   fprintf(stderr, "expecting details +10 bytes reachable\n"); fflush(stderr); breakme();
51 monitor leak_check full reachable increased
52 continue
53 #   VALGRIND_DO_ADDED_LEAK_CHECK;
55 #   b10--;
56 #   fprintf(stderr, "expecting details -10 bytes reachable, +10 bytes lost\n"); fflush(stderr); breakme();
58 monitor leak_check full reachable changed
59 continue
60 #   VALGRIND_DO_CHANGED_LEAK_CHECK;
62 #   b10++;
63 #   fprintf(stderr, "expecting details -10 bytes lost, +10 bytes reachable\n"); fflush(stderr); breakme();
65 monitor leak_check full reachable changed
66 continue
67 #   VALGRIND_DO_CHANGED_LEAK_CHECK;
69 #   b32_33[0]--;
70 #   fprintf(stderr, "expecting details 32 (+32) bytes lost, 33 (-32) bytes reachable\n"); fflush(stderr); breakme();
72 monitor leak_check full reachable changed
73 # output all leak records:
74 monitor leak_check full reachable any unlimited
75 # output the 2 biggest leak records:
76 monitor leak_check full reachable any limited 2
77 #output the biggest leak record:
78 monitor leak_check full reachable any limited 1
79 # output the biggest definitely leaked record:
80 monitor leak_check full definiteleak any limited 1
81 continue
82 #   VALGRIND_DO_CHANGED_LEAK_CHECK;
84 quit