Re: [PATCH] Let dprintf can be saved

Hui Zhu
2013-04-20T07:38:06Z

[-- Attachment #1: Type: text/plain, Size: 1034 bytes --]

Hi,

This is patch add test for dprintf to save-bp.exp.

Thanks,
Hui

2013-04-20 Hui Zhu <hui@codesourcery.com>

PR gdb/15165

* gdb.base/save-bp.exp: Add test for dprintf.

On Sat, Apr 20, 2013 at 3:04 PM, Hui Zhu <teawater@gmail.com> wrote:
> On Sat, Apr 20, 2013 at 12:34 AM, Tom Tromey <tromey@redhat.com> wrote:
>>>>>>> "Hui" == Hui Zhu <teawater@gmail.com> writes:
>>
>> Hui> +static void
>> Hui> +dprintf_print_recreate (struct breakpoint *tp, struct ui_file *fp)
>>
>> This needs a short introductory comment.
>> See the other print_recreate methods for examples.
>
> Fixed.
>
>>
>> I think this patch could use a test case.
>> It could be added wherever the existing "save" tests live.
>
> OK. I will post a patch for it later.
>
> Thanks,
> Hui
>
>>
>> Tom
>
> 2013-04-18 Hui Zhu <hui@codesourcery.com>
>
> PR gdb/15165
>
> * breakpoint.c (dprintf_print_recreate): New.
> (save_breakpoints): Let it not save dprintf commands.
> (initialize_breakpoint_ops): Set dprintf_print_recreate.

[-- Attachment #2: dprintf-save-test.txt --]
[-- Type: text/plain, Size: 1566 bytes --]

--- a/gdb/testsuite/gdb.base/save-bp.exp
+++ b/gdb/testsuite/gdb.base/save-bp.exp
@@ -46,6 +46,8 @@ set loc_bp5 [gdb_get_line_number "with c
gdb_breakpoint ${srcfile}:${loc_bp5}
gdb_test "commands\nsilent\nend" "End with.*" "add breakpoint commands"

+gdb_test "dprintf ${srcfile}:${loc_bp5},\"At foo entry\\n\"" "Dprintf .*"
+
# Now, save the breakpoints into a file...
remote_file host delete "bps"
gdb_test "save breakpoint bps"
@@ -65,5 +67,6 @@ gdb_test "source bps"

# Now, verify that all breakpoints have been created correctly...
set bp_row_start "\[0-9\]+ +breakpoint +keep +y +0x\[0-9a-f\]+ +in"
+set dprintf_row_start "\[0-9\]+ +dprintf +keep +y +0x\[0-9a-f\]+ +in"
gdb_test "info break" \
- " *Num +Type +Disp +Enb +Address +What\r\n$bp_row_start break_me at .*$srcfile:\[0-9\]+\r\n$bp_row_start main at .*$srcfile:$loc_bp2\r\n$bp_row_start main at .*$srcfile:$loc_bp3 +thread 1\r\n\[ \t]+stop only in thread 1\r\n$bp_row_start main at .*$srcfile:$loc_bp4\r\n\[ \t\]+stop only if i == 1( \\((host|target) evals\\))?\r\n$bp_row_start main at .*$srcfile:$loc_bp5\r\n\[ \t\]+silent"
+ " *Num +Type +Disp +Enb +Address +What\r\n$bp_row_start break_me at .*$srcfile:\[0-9\]+\r\n$bp_row_start main at .*$srcfile:$loc_bp2\r\n$bp_row_start main at .*$srcfile:$loc_bp3 +thread 1\r\n\[ \t]+stop only in thread 1\r\n$bp_row_start main at .*$srcfile:$loc_bp4\r\n\[ \t\]+stop only if i == 1( \\((host|target) evals\\))?\r\n$bp_row_start main at .*$srcfile:$loc_bp5\r\n\[ \t\]+silent\r\n$dprintf_row_start main at .*$srcfile:$loc_bp5\r\n\[ \t\]+printf.*"