Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* Re: stab at a fix for PR java/1039
@ 2003-06-22 20:38 Michael Elizabeth Chastain
  2003-06-22 20:49 ` Daniel Jacobowitz
  0 siblings, 1 reply; 8+ messages in thread
From: Michael Elizabeth Chastain @ 2003-06-22 20:38 UTC (permalink / raw)
  To: ac131313, carlton; +Cc: gdb-patches

I don't know where that particular patch is at.

Regarding PR 1039, I have a fresh testbed run here, and it says
that the "break main; run" tests in jmisc1.exp and jmisc2.exp work
in all the configurations I have with java (that is, with all
gcc v3, but no gcc v2).  So this will be gone from my next list of
"5.3 versus HEAD" issues.

And back in those long-ago days of February 2003 I wrote:

mec> But this time we are going to go INTO
mec> the branch cut with near release-quality already!
mec> I'm excited!

Ha ha ha, the naivete of youth.  :)

Michael C


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: stab at a fix for PR java/1039
  2003-06-22 20:38 stab at a fix for PR java/1039 Michael Elizabeth Chastain
@ 2003-06-22 20:49 ` Daniel Jacobowitz
  0 siblings, 0 replies; 8+ messages in thread
From: Daniel Jacobowitz @ 2003-06-22 20:49 UTC (permalink / raw)
  To: Michael Elizabeth Chastain; +Cc: ac131313, carlton, gdb-patches

On Sun, Jun 22, 2003 at 04:38:39PM -0400, Michael Elizabeth Chastain wrote:
> I don't know where that particular patch is at.
> 
> Regarding PR 1039, I have a fresh testbed run here, and it says
> that the "break main; run" tests in jmisc1.exp and jmisc2.exp work
> in all the configurations I have with java (that is, with all
> gcc v3, but no gcc v2).  So this will be gone from my next list of
> "5.3 versus HEAD" issues.

Odd, break main fails here:
(gdb) break jmisc.main
the class jmisc does not have any method named main
Hint: try 'jmisc.main<TAB> or 'jmisc.main<ESC-?>
(Note leading single quote.)
(gdb) FAIL: gdb.java/jmisc.exp: setting breakpoint at jmisc.main

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: stab at a fix for PR java/1039
  2003-06-22 18:35 ` Andrew Cagney
@ 2003-06-24 20:45   ` David Carlton
  0 siblings, 0 replies; 8+ messages in thread
From: David Carlton @ 2003-06-24 20:45 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: Michael Elizabeth Chastain, gdb-patches

On Sun, 22 Jun 2003 14:35:14 -0400, Andrew Cagney <ac131313@redhat.com> said:

> Hello,
> Where is this one at?

It's been applied.

David Carlton
carlton@math.stanford.edu


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: stab at a fix for PR java/1039
@ 2003-06-22 21:10 Michael Elizabeth Chastain
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Elizabeth Chastain @ 2003-06-22 21:10 UTC (permalink / raw)
  To: drow; +Cc: ac131313, carlton, gdb-patches

Argh, I forgot about jmisc.exp.

  (gdb) break jmisc.main
  the class jmisc does not have any method named main
  Hint: try 'jmisc.main<TAB> or 'jmisc.main<ESC-?>
  (Note leading single quote.)
  (gdb) FAIL: gdb.java/jmisc.exp: setting breakpoint at jmisc.main

I am getting that too.  :(

But jmisc1.exp and jmisc2.exp work:

  (gdb) break jmisc.main(java.lang.String[])^M
  Breakpoint 1 at 0x804adde: file /berman/fsf/_today_/source/gdb/HEAD/src/gdb/testsuite/gdb.java/jmisc.java, line 6.^M

  (gdb) break jmisc.main(java.lang.String[])^M
  Breakpoint 1 at 0x804adde: file /berman/fsf/_today_/source/gdb/HEAD/src/gdb/testsuite/gdb.java/jmisc.java, line 6.^M

Michael C


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: stab at a fix for PR java/1039
  2003-03-02  7:37 Michael Elizabeth Chastain
  2003-03-02 15:58 ` David Carlton
@ 2003-06-22 18:35 ` Andrew Cagney
  2003-06-24 20:45   ` David Carlton
  1 sibling, 1 reply; 8+ messages in thread
From: Andrew Cagney @ 2003-06-22 18:35 UTC (permalink / raw)
  To: Michael Elizabeth Chastain, carlton; +Cc: gdb-patches

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

Hello,

Where is this one at?

Andrew

[-- Attachment #2: mailbox-message://ac131313@movemail/fsf/gdb/patches#172720 --]
[-- Type: message/rfc822, Size: 6742 bytes --]

From: Michael Elizabeth Chastain <mec@shout.net>
To: carlton@math.stanford.edu
Cc: gdb-patches@sources.redhat.com
Subject: Re: stab at a fix for PR java/1039
Date: Sun, 2 Mar 2003 01:37:21 -0600
Message-ID: <200303020737.h227bL602253@duracef.shout.net>

I gave it the full megilllah, all tests on all 32 platforms that I
currently cover.  There were no changes -- no regressions or
improvements -- anywhere, except for stuff like annota2.exp that
fluctuates even on identical runs.

If it fixes a bug anyways then these result are a green light.  If it
was meant to fix this specific Java bug then it's a question mark.

I am getting a quite a bit scatter-brained, I need to calm down and
focus on one thing at a time.  But this time we are going to go INTO
the branch cut with near release-quality already!  I'm excited!

Michael C

2003-02-28  David Carlton  <carlton@math.stanford.edu>

	* symtab.c (lookup_partial_symbol): Add linkage_name argument.
	(lookup_symbol_aux_psymtabs): Update call to
	lookup_partial_symbol.
	(lookup_transparent_type, find_main_psymtab)
	(make_symbol_overload_list): Ditto.

Index: symtab.c
===================================================================
RCS file: /cvs/src/src/gdb/symtab.c,v
retrieving revision 1.96
diff -u -p -r1.96 symtab.c
--- symtab.c	27 Feb 2003 20:48:03 -0000	1.96
+++ symtab.c	28 Feb 2003 22:58:15 -0000
@@ -76,6 +76,7 @@ static int find_line_common (struct line
 char *operator_chars (char *p, char **end);
 
 static struct partial_symbol *lookup_partial_symbol (struct partial_symtab *,
+						     const char *,
 						     const char *, int,
 						     namespace_enum);
 
@@ -1201,7 +1202,8 @@ lookup_symbol_aux_psymtabs (int block_in
   ALL_PSYMTABS (objfile, ps)
   {
     if (!ps->readin
-	&& lookup_partial_symbol (ps, name, psymtab_index, namespace))
+	&& lookup_partial_symbol (ps, name, mangled_name,
+				  psymtab_index, namespace))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1371,7 +1373,8 @@ lookup_symbol_aux_minsyms (const char *n
    symbols if GLOBAL, the static symbols if not */
 
 static struct partial_symbol *
-lookup_partial_symbol (struct partial_symtab *pst, const char *name, int global,
+lookup_partial_symbol (struct partial_symtab *pst, const char *name,
+		       const char *linkage_name, int global,
 		       namespace_enum namespace)
 {
   struct partial_symbol *temp;
@@ -1426,7 +1429,10 @@ lookup_partial_symbol (struct partial_sy
       /* djb - 2000-06-03 - Use SYMBOL_MATCHES_NAME, not a strcmp, so
 	 we don't have to force a linear search on C++. Probably holds true
 	 for JAVA as well, no way to check.*/
-      while (top <= real_top && SYMBOL_MATCHES_NAME (*top,name))
+      while (top <= real_top
+	     && (linkage_name
+		 ? (strcmp (SYMBOL_LINKAGE_NAME (*top), linkage_name) == 0)
+		 : SYMBOL_MATCHES_NAME (*top,name)))
 	{
 	  if (SYMBOL_NAMESPACE (*top) == namespace)
 	    {
@@ -1445,7 +1451,9 @@ lookup_partial_symbol (struct partial_sy
 	{
 	  if (namespace == SYMBOL_NAMESPACE (*psym))
 	    {
-	      if (SYMBOL_MATCHES_NAME (*psym, name))
+	      if (linkage_name
+		  ? (strcmp (SYMBOL_LINKAGE_NAME (*psym), linkage_name) == 0)
+		  : SYMBOL_MATCHES_NAME (*psym, name))
 		{
 		  return (*psym);
 		}
@@ -1492,7 +1500,8 @@ lookup_transparent_type (const char *nam
 
   ALL_PSYMTABS (objfile, ps)
   {
-    if (!ps->readin && lookup_partial_symbol (ps, name, 1, STRUCT_NAMESPACE))
+    if (!ps->readin
+	&& lookup_partial_symbol (ps, name, NULL, 1, STRUCT_NAMESPACE))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1539,7 +1548,8 @@ lookup_transparent_type (const char *nam
 
   ALL_PSYMTABS (objfile, ps)
   {
-    if (!ps->readin && lookup_partial_symbol (ps, name, 0, STRUCT_NAMESPACE))
+    if (!ps->readin
+	&& lookup_partial_symbol (ps, name, NULL, 0, STRUCT_NAMESPACE))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1580,7 +1590,7 @@ find_main_psymtab (void)
 
   ALL_PSYMTABS (objfile, pst)
   {
-    if (lookup_partial_symbol (pst, main_name (), 1, VAR_NAMESPACE))
+    if (lookup_partial_symbol (pst, main_name (), NULL, 1, VAR_NAMESPACE))
       {
 	return (pst);
       }
@@ -4026,8 +4036,10 @@ make_symbol_overload_list (struct symbol
     if (ps->readin)
       continue;
 
-    if ((lookup_partial_symbol (ps, oload_name, 1, VAR_NAMESPACE) != NULL)
-	|| (lookup_partial_symbol (ps, oload_name, 0, VAR_NAMESPACE) != NULL))
+    if ((lookup_partial_symbol (ps, oload_name, NULL, 1, VAR_NAMESPACE)
+	 != NULL)
+	|| (lookup_partial_symbol (ps, oload_name, NULL, 0, VAR_NAMESPACE)
+	    != NULL))
       PSYMTAB_TO_SYMTAB (ps);
   }
 



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: stab at a fix for PR java/1039
  2003-03-02  7:37 Michael Elizabeth Chastain
@ 2003-03-02 15:58 ` David Carlton
  2003-06-22 18:35 ` Andrew Cagney
  1 sibling, 0 replies; 8+ messages in thread
From: David Carlton @ 2003-03-02 15:58 UTC (permalink / raw)
  To: Michael Elizabeth Chastain; +Cc: gdb-patches

On Sun, 2 Mar 2003 01:37:21 -0600, Michael Elizabeth Chastain <mec@shout.net> said:

> I gave it the full megilllah, all tests on all 32 platforms that I
> currently cover.  There were no changes -- no regressions or
> improvements -- anywhere, except for stuff like annota2.exp that
> fluctuates even on identical runs.

> If it fixes a bug anyways then these result are a green light.  If it
> was meant to fix this specific Java bug then it's a question mark.

Oh well.  Hopefully I'll have access to a more recent gcj soonish.

David Carlton
carlton@math.stanford.edu


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: stab at a fix for PR java/1039
@ 2003-03-02  7:37 Michael Elizabeth Chastain
  2003-03-02 15:58 ` David Carlton
  2003-06-22 18:35 ` Andrew Cagney
  0 siblings, 2 replies; 8+ messages in thread
From: Michael Elizabeth Chastain @ 2003-03-02  7:37 UTC (permalink / raw)
  To: carlton; +Cc: gdb-patches

I gave it the full megilllah, all tests on all 32 platforms that I
currently cover.  There were no changes -- no regressions or
improvements -- anywhere, except for stuff like annota2.exp that
fluctuates even on identical runs.

If it fixes a bug anyways then these result are a green light.  If it
was meant to fix this specific Java bug then it's a question mark.

I am getting a quite a bit scatter-brained, I need to calm down and
focus on one thing at a time.  But this time we are going to go INTO
the branch cut with near release-quality already!  I'm excited!

Michael C

2003-02-28  David Carlton  <carlton@math.stanford.edu>

	* symtab.c (lookup_partial_symbol): Add linkage_name argument.
	(lookup_symbol_aux_psymtabs): Update call to
	lookup_partial_symbol.
	(lookup_transparent_type, find_main_psymtab)
	(make_symbol_overload_list): Ditto.

Index: symtab.c
===================================================================
RCS file: /cvs/src/src/gdb/symtab.c,v
retrieving revision 1.96
diff -u -p -r1.96 symtab.c
--- symtab.c	27 Feb 2003 20:48:03 -0000	1.96
+++ symtab.c	28 Feb 2003 22:58:15 -0000
@@ -76,6 +76,7 @@ static int find_line_common (struct line
 char *operator_chars (char *p, char **end);
 
 static struct partial_symbol *lookup_partial_symbol (struct partial_symtab *,
+						     const char *,
 						     const char *, int,
 						     namespace_enum);
 
@@ -1201,7 +1202,8 @@ lookup_symbol_aux_psymtabs (int block_in
   ALL_PSYMTABS (objfile, ps)
   {
     if (!ps->readin
-	&& lookup_partial_symbol (ps, name, psymtab_index, namespace))
+	&& lookup_partial_symbol (ps, name, mangled_name,
+				  psymtab_index, namespace))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1371,7 +1373,8 @@ lookup_symbol_aux_minsyms (const char *n
    symbols if GLOBAL, the static symbols if not */
 
 static struct partial_symbol *
-lookup_partial_symbol (struct partial_symtab *pst, const char *name, int global,
+lookup_partial_symbol (struct partial_symtab *pst, const char *name,
+		       const char *linkage_name, int global,
 		       namespace_enum namespace)
 {
   struct partial_symbol *temp;
@@ -1426,7 +1429,10 @@ lookup_partial_symbol (struct partial_sy
       /* djb - 2000-06-03 - Use SYMBOL_MATCHES_NAME, not a strcmp, so
 	 we don't have to force a linear search on C++. Probably holds true
 	 for JAVA as well, no way to check.*/
-      while (top <= real_top && SYMBOL_MATCHES_NAME (*top,name))
+      while (top <= real_top
+	     && (linkage_name
+		 ? (strcmp (SYMBOL_LINKAGE_NAME (*top), linkage_name) == 0)
+		 : SYMBOL_MATCHES_NAME (*top,name)))
 	{
 	  if (SYMBOL_NAMESPACE (*top) == namespace)
 	    {
@@ -1445,7 +1451,9 @@ lookup_partial_symbol (struct partial_sy
 	{
 	  if (namespace == SYMBOL_NAMESPACE (*psym))
 	    {
-	      if (SYMBOL_MATCHES_NAME (*psym, name))
+	      if (linkage_name
+		  ? (strcmp (SYMBOL_LINKAGE_NAME (*psym), linkage_name) == 0)
+		  : SYMBOL_MATCHES_NAME (*psym, name))
 		{
 		  return (*psym);
 		}
@@ -1492,7 +1500,8 @@ lookup_transparent_type (const char *nam
 
   ALL_PSYMTABS (objfile, ps)
   {
-    if (!ps->readin && lookup_partial_symbol (ps, name, 1, STRUCT_NAMESPACE))
+    if (!ps->readin
+	&& lookup_partial_symbol (ps, name, NULL, 1, STRUCT_NAMESPACE))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1539,7 +1548,8 @@ lookup_transparent_type (const char *nam
 
   ALL_PSYMTABS (objfile, ps)
   {
-    if (!ps->readin && lookup_partial_symbol (ps, name, 0, STRUCT_NAMESPACE))
+    if (!ps->readin
+	&& lookup_partial_symbol (ps, name, NULL, 0, STRUCT_NAMESPACE))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1580,7 +1590,7 @@ find_main_psymtab (void)
 
   ALL_PSYMTABS (objfile, pst)
   {
-    if (lookup_partial_symbol (pst, main_name (), 1, VAR_NAMESPACE))
+    if (lookup_partial_symbol (pst, main_name (), NULL, 1, VAR_NAMESPACE))
       {
 	return (pst);
       }
@@ -4026,8 +4036,10 @@ make_symbol_overload_list (struct symbol
     if (ps->readin)
       continue;
 
-    if ((lookup_partial_symbol (ps, oload_name, 1, VAR_NAMESPACE) != NULL)
-	|| (lookup_partial_symbol (ps, oload_name, 0, VAR_NAMESPACE) != NULL))
+    if ((lookup_partial_symbol (ps, oload_name, NULL, 1, VAR_NAMESPACE)
+	 != NULL)
+	|| (lookup_partial_symbol (ps, oload_name, NULL, 0, VAR_NAMESPACE)
+	    != NULL))
       PSYMTAB_TO_SYMTAB (ps);
   }
 


^ permalink raw reply	[flat|nested] 8+ messages in thread

* stab at a fix for PR java/1039
@ 2003-02-28 23:00 David Carlton
  0 siblings, 0 replies; 8+ messages in thread
From: David Carlton @ 2003-02-28 23:00 UTC (permalink / raw)
  To: Michael Elizabeth Chastain; +Cc: gdb-patches

Michael, could you give this patch a try on gdb.java/jmisc2.exp in a
situation where that test used to pass before this month?  I don't
have the right version of gcj to test it, but it's vaguely possible
that this patch might do the trick.  There's certainly a bug in GDB in
this code, which this patch hopefully fixes; I could imagine how that
test might tickle the code in question.

David Carlton
carlton@math.stanford.edu

2003-02-28  David Carlton  <carlton@math.stanford.edu>

	* symtab.c (lookup_partial_symbol): Add linkage_name argument.
	(lookup_symbol_aux_psymtabs): Update call to
	lookup_partial_symbol.
	(lookup_transparent_type, find_main_psymtab)
	(make_symbol_overload_list): Ditto.

Index: symtab.c
===================================================================
RCS file: /cvs/src/src/gdb/symtab.c,v
retrieving revision 1.96
diff -u -p -r1.96 symtab.c
--- symtab.c	27 Feb 2003 20:48:03 -0000	1.96
+++ symtab.c	28 Feb 2003 22:58:15 -0000
@@ -76,6 +76,7 @@ static int find_line_common (struct line
 char *operator_chars (char *p, char **end);
 
 static struct partial_symbol *lookup_partial_symbol (struct partial_symtab *,
+						     const char *,
 						     const char *, int,
 						     namespace_enum);
 
@@ -1201,7 +1202,8 @@ lookup_symbol_aux_psymtabs (int block_in
   ALL_PSYMTABS (objfile, ps)
   {
     if (!ps->readin
-	&& lookup_partial_symbol (ps, name, psymtab_index, namespace))
+	&& lookup_partial_symbol (ps, name, mangled_name,
+				  psymtab_index, namespace))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1371,7 +1373,8 @@ lookup_symbol_aux_minsyms (const char *n
    symbols if GLOBAL, the static symbols if not */
 
 static struct partial_symbol *
-lookup_partial_symbol (struct partial_symtab *pst, const char *name, int global,
+lookup_partial_symbol (struct partial_symtab *pst, const char *name,
+		       const char *linkage_name, int global,
 		       namespace_enum namespace)
 {
   struct partial_symbol *temp;
@@ -1426,7 +1429,10 @@ lookup_partial_symbol (struct partial_sy
       /* djb - 2000-06-03 - Use SYMBOL_MATCHES_NAME, not a strcmp, so
 	 we don't have to force a linear search on C++. Probably holds true
 	 for JAVA as well, no way to check.*/
-      while (top <= real_top && SYMBOL_MATCHES_NAME (*top,name))
+      while (top <= real_top
+	     && (linkage_name
+		 ? (strcmp (SYMBOL_LINKAGE_NAME (*top), linkage_name) == 0)
+		 : SYMBOL_MATCHES_NAME (*top,name)))
 	{
 	  if (SYMBOL_NAMESPACE (*top) == namespace)
 	    {
@@ -1445,7 +1451,9 @@ lookup_partial_symbol (struct partial_sy
 	{
 	  if (namespace == SYMBOL_NAMESPACE (*psym))
 	    {
-	      if (SYMBOL_MATCHES_NAME (*psym, name))
+	      if (linkage_name
+		  ? (strcmp (SYMBOL_LINKAGE_NAME (*psym), linkage_name) == 0)
+		  : SYMBOL_MATCHES_NAME (*psym, name))
 		{
 		  return (*psym);
 		}
@@ -1492,7 +1500,8 @@ lookup_transparent_type (const char *nam
 
   ALL_PSYMTABS (objfile, ps)
   {
-    if (!ps->readin && lookup_partial_symbol (ps, name, 1, STRUCT_NAMESPACE))
+    if (!ps->readin
+	&& lookup_partial_symbol (ps, name, NULL, 1, STRUCT_NAMESPACE))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1539,7 +1548,8 @@ lookup_transparent_type (const char *nam
 
   ALL_PSYMTABS (objfile, ps)
   {
-    if (!ps->readin && lookup_partial_symbol (ps, name, 0, STRUCT_NAMESPACE))
+    if (!ps->readin
+	&& lookup_partial_symbol (ps, name, NULL, 0, STRUCT_NAMESPACE))
       {
 	s = PSYMTAB_TO_SYMTAB (ps);
 	bv = BLOCKVECTOR (s);
@@ -1580,7 +1590,7 @@ find_main_psymtab (void)
 
   ALL_PSYMTABS (objfile, pst)
   {
-    if (lookup_partial_symbol (pst, main_name (), 1, VAR_NAMESPACE))
+    if (lookup_partial_symbol (pst, main_name (), NULL, 1, VAR_NAMESPACE))
       {
 	return (pst);
       }
@@ -4026,8 +4036,10 @@ make_symbol_overload_list (struct symbol
     if (ps->readin)
       continue;
 
-    if ((lookup_partial_symbol (ps, oload_name, 1, VAR_NAMESPACE) != NULL)
-	|| (lookup_partial_symbol (ps, oload_name, 0, VAR_NAMESPACE) != NULL))
+    if ((lookup_partial_symbol (ps, oload_name, NULL, 1, VAR_NAMESPACE)
+	 != NULL)
+	|| (lookup_partial_symbol (ps, oload_name, NULL, 0, VAR_NAMESPACE)
+	    != NULL))
       PSYMTAB_TO_SYMTAB (ps);
   }
 


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2003-06-24 20:45 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-06-22 20:38 stab at a fix for PR java/1039 Michael Elizabeth Chastain
2003-06-22 20:49 ` Daniel Jacobowitz
  -- strict thread matches above, loose matches on Subject: below --
2003-06-22 21:10 Michael Elizabeth Chastain
2003-03-02  7:37 Michael Elizabeth Chastain
2003-03-02 15:58 ` David Carlton
2003-06-22 18:35 ` Andrew Cagney
2003-06-24 20:45   ` David Carlton
2003-02-28 23:00 David Carlton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox