* PATCH to gnuv3_rtti_type
@ 2002-04-17 19:02 Jason Merrill
2002-04-17 19:07 ` Daniel Jacobowitz
2002-04-30 11:28 ` Jason Merrill
0 siblings, 2 replies; 6+ messages in thread
From: Jason Merrill @ 2002-04-17 19:02 UTC (permalink / raw)
To: gdb-patches; +Cc: Jason Merrill
[-- Attachment #1: Type: text/plain, Size: 544 bytes --]
gnuv3_rtti_type still gets confused sometimes, by constructor vtables and
namespaces at least. This wouldn't be a big problem, as mostly I don't
care what the real type is, except that it gives an error and aborts. If
I'm just trying to print the contents of a pointer, this is rather
annoying.
This patch changes the errors to warnings, so that I get the normal output
which is all I really care about.
OK?
2002-04-14 Jason Merrill <jason@redhat.com>
* gnu-v3-abi.c (gnuv3_rtti_type): If we get confused, just warn
and return NULL.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 2470 bytes --]
*** gnu-v3-abi.c.~1~ Sun Mar 17 17:10:01 2002
--- gnu-v3-abi.c Sun Apr 14 22:59:39 2002
*************** gnuv3_rtti_type (struct value *value,
*** 241,262 ****
vtable_symbol_name = SYMBOL_DEMANGLED_NAME (vtable_symbol);
if (vtable_symbol_name == NULL
|| strncmp (vtable_symbol_name, "vtable for ", 11))
! error ("can't find linker symbol for virtual table for `%s' value",
! TYPE_NAME (value_type));
class_name = vtable_symbol_name + 11;
/* Try to look up the class name as a type name. */
class_symbol = lookup_symbol (class_name, 0, STRUCT_NAMESPACE, 0, 0);
if (! class_symbol)
! error ("can't find class named `%s', as given by C++ RTTI", class_name);
/* Make sure the type symbol is sane. (An earlier version of this
code would find constructor functions, who have the same name as
the class.) */
if (SYMBOL_CLASS (class_symbol) != LOC_TYPEDEF
|| TYPE_CODE (SYMBOL_TYPE (class_symbol)) != TYPE_CODE_CLASS)
! error ("C++ RTTI gives a class name of `%s', but that isn't a type name",
! class_name);
/* This is the object's run-time type! */
run_time_type = SYMBOL_TYPE (class_symbol);
--- 241,273 ----
vtable_symbol_name = SYMBOL_DEMANGLED_NAME (vtable_symbol);
if (vtable_symbol_name == NULL
|| strncmp (vtable_symbol_name, "vtable for ", 11))
! {
! warning ("can't find linker symbol for virtual table for `%s' value",
! TYPE_NAME (value_type));
! if (vtable_symbol_name)
! warning (" found `%s' instead", vtable_symbol_name);
! return NULL;
! }
class_name = vtable_symbol_name + 11;
/* Try to look up the class name as a type name. */
class_symbol = lookup_symbol (class_name, 0, STRUCT_NAMESPACE, 0, 0);
if (! class_symbol)
! {
! warning ("can't find class named `%s', as given by C++ RTTI", class_name);
! return NULL;
! }
/* Make sure the type symbol is sane. (An earlier version of this
code would find constructor functions, who have the same name as
the class.) */
if (SYMBOL_CLASS (class_symbol) != LOC_TYPEDEF
|| TYPE_CODE (SYMBOL_TYPE (class_symbol)) != TYPE_CODE_CLASS)
! {
! warning ("C++ RTTI gives a class name of `%s', but that isn't a type name",
! class_name);
! return NULL;
! }
/* This is the object's run-time type! */
run_time_type = SYMBOL_TYPE (class_symbol);
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: PATCH to gnuv3_rtti_type
2002-04-17 19:02 PATCH to gnuv3_rtti_type Jason Merrill
@ 2002-04-17 19:07 ` Daniel Jacobowitz
2002-04-30 11:28 ` Jason Merrill
1 sibling, 0 replies; 6+ messages in thread
From: Daniel Jacobowitz @ 2002-04-17 19:07 UTC (permalink / raw)
To: gdb-patches
On Thu, Apr 18, 2002 at 03:02:36AM +0100, Jason Merrill wrote:
> gnuv3_rtti_type still gets confused sometimes, by constructor vtables and
> namespaces at least. This wouldn't be a big problem, as mostly I don't
> care what the real type is, except that it gives an error and aborts. If
> I'm just trying to print the contents of a pointer, this is rather
> annoying.
>
> This patch changes the errors to warnings, so that I get the normal output
> which is all I really care about.
>
> OK?
Sure, thank you.
> 2002-04-14 Jason Merrill <jason@redhat.com>
>
> * gnu-v3-abi.c (gnuv3_rtti_type): If we get confused, just warn
> and return NULL.
>
--
Daniel Jacobowitz Carnegie Mellon University
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PATCH to gnuv3_rtti_type
2002-04-17 19:02 PATCH to gnuv3_rtti_type Jason Merrill
2002-04-17 19:07 ` Daniel Jacobowitz
@ 2002-04-30 11:28 ` Jason Merrill
2002-04-30 12:10 ` Michael Snyder
1 sibling, 1 reply; 6+ messages in thread
From: Jason Merrill @ 2002-04-30 11:28 UTC (permalink / raw)
To: gdb-patches
Ping?
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PATCH to gnuv3_rtti_type
2002-04-30 11:28 ` Jason Merrill
@ 2002-04-30 12:10 ` Michael Snyder
2002-05-03 12:36 ` Jason Merrill
0 siblings, 1 reply; 6+ messages in thread
From: Michael Snyder @ 2002-04-30 12:10 UTC (permalink / raw)
To: Jason Merrill; +Cc: gdb-patches
Jason Merrill wrote:
>
> Ping?
Jason, this was approved by Daniel on the same day you sent it:
On Thu, Apr 18, 2002 at 03:02:36AM +0100, Jason Merrill wrote:
> gnuv3_rtti_type still gets confused sometimes, by constructor vtables and
> namespaces at least. This wouldn't be a big problem, as mostly I don't
> care what the real type is, except that it gives an error and aborts. If
> I'm just trying to print the contents of a pointer, this is rather
> annoying.
>
> This patch changes the errors to warnings, so that I get the normal output
> which is all I really care about.
>
> OK?
Sure, thank you.
> 2002-04-14 Jason Merrill <jason@redhat.com>
>
> * gnu-v3-abi.c (gnuv3_rtti_type): If we get confused, just warn
> and return NULL.
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PATCH to gnuv3_rtti_type
2002-04-30 12:10 ` Michael Snyder
@ 2002-05-03 12:36 ` Jason Merrill
2002-05-03 14:16 ` Daniel Jacobowitz
0 siblings, 1 reply; 6+ messages in thread
From: Jason Merrill @ 2002-05-03 12:36 UTC (permalink / raw)
To: Michael Snyder; +Cc: gdb-patches
>>>>> "Michael" == Michael Snyder <msnyder@redhat.com> writes:
> Jason, this was approved by Daniel on the same day you sent it:
Ah, I guess he just didn't CC me. Thanks.
Jason
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PATCH to gnuv3_rtti_type
2002-05-03 12:36 ` Jason Merrill
@ 2002-05-03 14:16 ` Daniel Jacobowitz
0 siblings, 0 replies; 6+ messages in thread
From: Daniel Jacobowitz @ 2002-05-03 14:16 UTC (permalink / raw)
To: Jason Merrill; +Cc: Michael Snyder, gdb-patches
On Fri, May 03, 2002 at 08:36:51PM +0100, Jason Merrill wrote:
> >>>>> "Michael" == Michael Snyder <msnyder@redhat.com> writes:
>
> > Jason, this was approved by Daniel on the same day you sent it:
>
> Ah, I guess he just didn't CC me. Thanks.
Sorry about that.
--
Daniel Jacobowitz Carnegie Mellon University
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2002-05-03 21:16 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-04-17 19:02 PATCH to gnuv3_rtti_type Jason Merrill
2002-04-17 19:07 ` Daniel Jacobowitz
2002-04-30 11:28 ` Jason Merrill
2002-04-30 12:10 ` Michael Snyder
2002-05-03 12:36 ` Jason Merrill
2002-05-03 14:16 ` Daniel Jacobowitz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox