From: Tom Tromey <tromey@redhat.com>
To: Jan Kratochvil <jan.kratochvil@redhat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [rfc] Be in language c more c++ compatible
Date: Sat, 16 Jul 2011 08:42:00 -0000 [thread overview]
Message-ID: <m3k4bj9s7f.fsf@fleche.redhat.com> (raw)
In-Reply-To: <20110715191920.GA29975@host1.jankratochvil.net> (Jan Kratochvil's message of "Fri, 15 Jul 2011 21:19:20 +0200")
>>>>> "Jan" == Jan Kratochvil <jan.kratochvil@redhat.com> writes:
Jan> echo 'class C { typedef int t; t i; } c;'|g++ -c -o 1.o -g -x c++ -
Jan> FSF GDB HEAD
Jan> (gdb) show language
Jan> The current source language is "auto; currently c".
I am curious why this happens.
It seems like it should say "currently c++" -- I didn't check the code
but my mental model would be that if there is no frame, then the default
symtab should either be 'main' or, if no main, say the first CU in the
symbol file; and the default symtab's language should be used for auto.
Jan> The first (c-exp.y) part parses those parts of `language c++' which cannot
Jan> (I believe - RFC) lead to misinterpretation of any valid C code even in
Jan> `language c'.
I think so, though one would have to check eval.c and friends as well to
be certain.
Jan> The second (valops.c) part is there because with `language c++'
Jan> parsing "C::t" is straight OP_TYPE handled correctly in
Jan> evaluate_subexp_standard. But with `language c' it gets parsed as
Jan> OP_SCOPE and I find there a bug, copied the code there.
I don't even know why we have OP_SCOPE.
Tom
next prev parent reply other threads:[~2011-07-15 20:58 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-15 20:47 Jan Kratochvil
2011-07-16 8:42 ` Tom Tromey [this message]
2011-07-16 9:45 ` Jan Kratochvil
2011-07-23 21:17 ` Mark Kettenis
2011-07-23 21:38 ` Jan Kratochvil
2011-07-25 15:00 ` Tom Tromey
2011-07-23 22:12 ` Matt Rice
2011-07-24 15:59 ` Jan Kratochvil
2011-07-24 15:59 ` Matt Rice
2011-07-25 14:52 ` 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=m3k4bj9s7f.fsf@fleche.redhat.com \
--to=tromey@redhat.com \
--cc=gdb-patches@sourceware.org \
--cc=jan.kratochvil@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