From: Pedro Alves <palves@redhat.com>
To: Hui Zhu <teawater@gmail.com>
Cc: Tom Tromey <tromey@redhat.com>, Eli Zaretskii <eliz@gnu.org>,
Hui Zhu <hui_zhu@mentor.com>,
gdb-patches ml <gdb-patches@sourceware.org>,
Marc Khouzam <marc.khouzam@ericsson.com>
Subject: Re: [PATCH] add -s option to make -break-insert support dprintf
Date: Mon, 15 Apr 2013 19:36:00 -0000 [thread overview]
Message-ID: <516C2549.3060808@redhat.com> (raw)
In-Reply-To: <CANFwon2_yT4SOpK7=Rq=91nFcvk2Rn3_wAkCMmsfgP-6iynGig@mail.gmail.com>
On 04/15/2013 02:33 PM, Hui Zhu wrote:
> On Sat, Apr 13, 2013 at 12:32 AM, Tom Tromey <tromey@redhat.com> wrote:
>>>>>>> "Hui" == Hui Zhu <teawater@gmail.com> writes:
>>
>> Hui> + [ -s "@var{template},@var{expression}[,@var{expression}@dots{}]" ]
>> Hui> + [ @var{location} ]
>>
>> Hui> +@item -s "@var{template},@var{expression}[,@var{expression}@dots{}]"
>> Hui> +Set a dynamic printf breakpoint, described in @ref{Dynamic Printf}.
>> Hui> +The @var{template} and @var{expression} should be within double
>> Hui> +quotes and be escaped by being preceded with a backslash.
>>
>> MI already defines a quoting approach and allows multiple arguments.
>> In fact one of its selling points is that it doesn't have to be as
>> free-form as the CLI -- it can be more predictable for programs to use.
>>
>> So, I think the above approach is not that great.
>> It adds a second layer of parsing to MI, I guess just to work around
>> internal deficiencies in gdb.
>>
>> It seems like you could use positional arguments instead:
>>
>> -break-insert -s FORMAT LOCATION ARG ARG ARG ...
>>
>>
>> I don't really understand the part about how the expressions should be
>> in double quotes. The test suite doesn't do that:
>>
>> +mi_gdb_test "5-break-insert -s \"\\\"arg=%d, g=%d\\\\n\\\", arg, g\" $dp_location1" \
>>
>> I suggest just dropping that text. I think it probably means that the
>> argument should be properly quoted for MI, but that is redundant.
I stopped for this as well before while reviewing the patches. I ended
up not say anything as after trying things out, I realized that unlike
with other arguments, which only require quoting if the argument itself
contains spaces or quotes, etc., in this case, the quotes really are
necessary (as in, GDB complains if you don't add the quotes). I didn't
think about the split arguments idea though. That's a good question.
>>
>> Tom
>
> This design is because the MI inferior will auto convert the format
> string of argument of mi command. But dprintf need format sting keep
> the original of the format string. So I use the current format.
I have a bit of trouble understanding exactly what you meant. :-( I see
that with "target-printf" (what dprintf uses as command when the dprintf
runs on the target/agent side), the whole format string plus the expressions are
passed down to the target as a single chunk, unanalyzed and unmodified.
E.g., even 'dprintf foo, "foo" "bar"' or 'agent-printf "foo" "bar"' is
accepted, and passed down to the target as is (whatever that might mean).
Is that what you were referring to? What did you mean by "MI inferior"
and "auto convert" ?
--
Pedro Alves
next prev parent reply other threads:[~2013-04-15 16:05 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-28 17:44 Hui Zhu
2013-03-28 18:37 ` Eli Zaretskii
2013-03-29 16:12 ` Hui Zhu
2013-03-29 16:13 ` Eli Zaretskii
2013-04-09 23:31 ` Pedro Alves
2013-04-10 19:44 ` Marc Khouzam
2013-04-10 19:45 ` Pedro Alves
2013-04-11 6:15 ` Hui Zhu
2013-04-11 17:47 ` Pedro Alves
2013-04-12 14:56 ` Hui Zhu
2013-04-12 15:22 ` Pedro Alves
2013-04-15 18:59 ` Hui Zhu
2013-04-15 19:41 ` Pedro Alves
2013-04-16 9:31 ` Hui Zhu
2013-04-22 1:25 ` Yao Qi
2013-04-12 16:03 ` Eli Zaretskii
2013-04-13 14:16 ` Tom Tromey
2013-04-15 18:04 ` Hui Zhu
2013-04-15 19:36 ` Pedro Alves [this message]
2013-04-16 9:31 ` Hui Zhu
2013-04-22 0:18 ` Tom Tromey
2013-04-22 9:07 ` Hui Zhu
2013-04-25 6:51 ` Tom Tromey
2013-05-03 5:43 ` Hui Zhu
2013-05-07 20:50 ` Tom Tromey
2013-05-10 10:57 ` Hui Zhu
2013-05-10 15:24 ` Tom Tromey
2013-05-11 2:38 ` Hui Zhu
2013-05-11 7:29 ` Eli Zaretskii
2013-05-13 3:39 ` Hui Zhu
2013-05-13 15:55 ` Eli Zaretskii
2013-05-14 4:56 ` Hui Zhu
2013-05-20 7:31 ` Hui Zhu
2013-05-20 15:44 ` Eli Zaretskii
2013-05-21 4:25 ` Hui Zhu
2013-05-21 8:10 ` [patch] Fix racy FAILs due to "read1" [Re: [PATCH] add -s option to make -break-insert support dprintf] Jan Kratochvil
2013-05-21 9:30 ` Hui Zhu
2013-05-21 15:01 ` [commit] " Jan Kratochvil
2013-05-22 1:05 ` Hui Zhu
2013-05-23 14:03 ` [patch] Fix racy FAILs #2 " Jan Kratochvil
2013-05-24 15:37 ` [commit] " Jan Kratochvil
2013-05-27 11:02 ` Hui Zhu
2013-05-13 16:23 ` [PATCH] add -s option to make -break-insert support dprintf Tom Tromey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=516C2549.3060808@redhat.com \
--to=palves@redhat.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
--cc=hui_zhu@mentor.com \
--cc=marc.khouzam@ericsson.com \
--cc=teawater@gmail.com \
--cc=tromey@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox