* For gdb-4.17 : COFF and C++
[not found] <19980206204523.51968@cygnus.com>
@ 1998-02-09 21:38 ` Philippe De Muyter
1998-02-09 21:43 ` For gdb-4.17 : COFF and unsigned enum's Philippe De Muyter
1998-02-09 21:48 ` For gdb-4.17 : distclean and YYFILES Philippe De Muyter
2 siblings, 0 replies; 4+ messages in thread
From: Philippe De Muyter @ 1998-02-09 21:38 UTC (permalink / raw)
To: Jason Molenda; +Cc: gdb-patches
The following patch changes all FAIL's in gdb.c++/cplusfuncs.exp to PASS's.
Mon Feb 9 16:47:11 1998 Philippe De Muyter <phdm@macqel.be>
* coffread.c (coff_start_symtab): Function takes new parameter `name'
and passes it to start_symtab. All callers updated.
(process_coff_symbol): Call SYMBOL_INIT_DEMANGLE_NAME.
--- ./gdb/coffread.c Mon Feb 9 16:44:48 1998
+++ ./gdb/coffread.c Mon Feb 9 13:01:56 1998
@@ -22,6 +22,7 @@
#include "defs.h"
#include "symtab.h"
#include "gdbtypes.h"
+#include "demangle.h"
#include "breakpoint.h"
#include "bfd.h"
@@ -249,7 +250,7 @@
static void complete_symtab PARAMS ((char *, CORE_ADDR, unsigned int));
-static void coff_start_symtab PARAMS ((void));
+static void coff_start_symtab PARAMS ((char *));
static void coff_record_line PARAMS ((int, CORE_ADDR));
@@ -468,14 +469,15 @@ coff_record_line (line, pc)
it indicates the start of data for one original source file. */
static void
-coff_start_symtab ()
+coff_start_symtab (name)
+ char *name;
{
start_symtab (
/* We fill in the filename later. start_symtab puts
this pointer into last_source_file and we put it in
subfiles->name, which end_symtab frees; that's why
it must be malloc'd. */
- savestring ("", 0),
+ savestring (name, strlen(name)),
/* We never know the directory name for COFF. */
NULL,
/* The start address is irrelevant, since we set
@@ -544,7 +546,6 @@ coff_end_symtab (objfile)
before (or because doing it now is simply an artifact of how this
file used to be written). */
subfiles->line_vector = line_vector;
- subfiles->name = last_source_file;
symtab = end_symtab (current_source_end_addr, objfile, 0);
@@ -859,7 +860,7 @@ coff_symtab_read (symtab_offset, nsyms,
xmalloc (type_vector_length * sizeof (struct type *));
memset (type_vector, 0, type_vector_length * sizeof (struct type *));
- coff_start_symtab ();
+ coff_start_symtab ("");
symnum = 0;
while (symnum < nsyms)
@@ -873,7 +874,7 @@ coff_symtab_read (symtab_offset, nsyms,
if (last_source_file)
coff_end_symtab (objfile);
- coff_start_symtab ();
+ coff_start_symtab ("_globals_");
complete_symtab ("_globals_", 0, 0);
/* done with all files, everything from here on out is globals */
}
@@ -924,7 +925,7 @@ coff_symtab_read (symtab_offset, nsyms,
if (last_source_file)
{
coff_end_symtab (objfile);
- coff_start_symtab ();
+ coff_start_symtab (filestring);
}
in_source_file = 1;
break;
@@ -1532,6 +1533,8 @@ process_coff_symbol (cs, aux, section_of
name = EXTERNAL_NAME (name, objfile->obfd);
SYMBOL_NAME (sym) = obsavestring (name, strlen (name),
&objfile->symbol_obstack);
+ SYMBOL_LANGUAGE (sym) = language_auto;
+ SYMBOL_INIT_DEMANGLED_NAME (sym, &objfile->symbol_obstack);
/* default assumptions */
SYMBOL_VALUE (sym) = cs->c_value;
^ permalink raw reply [flat|nested] 4+ messages in thread
* For gdb-4.17 : COFF and unsigned enum's
[not found] <19980206204523.51968@cygnus.com>
1998-02-09 21:38 ` For gdb-4.17 : COFF and C++ Philippe De Muyter
@ 1998-02-09 21:43 ` Philippe De Muyter
1998-02-09 21:48 ` For gdb-4.17 : distclean and YYFILES Philippe De Muyter
2 siblings, 0 replies; 4+ messages in thread
From: Philippe De Muyter @ 1998-02-09 21:43 UTC (permalink / raw)
To: Jason Molenda; +Cc: gdb-patches
The following patch fixes the unsigned enum bitfield FAIL's in
gdb.base/setvar.exp (on m68k-motorola-syv).
Mon Feb 9 16:47:11 1998 Philippe De Muyter <phdm@macqel.be>
* coffread.c (coff_read_enum_type): Set TYPE_FLAG_UNSIGNED if enum
is unsigned.
--- ./gdb/coffread.c Mon Feb 9 16:44:48 1998
+++ ./gdb/coffread.c Mon Feb 9 13:01:56 1998
@@ -2090,6 +2093,7 @@ coff_read_enum_type (index, length, last
int o_nsyms;
register int n;
char *name;
+ int unsigned_enum = 1;
type = coff_alloc_type (index);
if (within_function)
@@ -2163,11 +2167,16 @@ coff_read_enum_type (index, length, last
SYMBOL_TYPE (xsym) = type;
TYPE_FIELD_NAME (type, n) = SYMBOL_NAME (xsym);
TYPE_FIELD_BITPOS (type, n) = SYMBOL_VALUE (xsym);
+ if (SYMBOL_VALUE (xsym) < 0)
+ unsigned_enum = 0;
TYPE_FIELD_BITSIZE (type, n) = 0;
}
if (syms == osyms)
break;
}
+
+ if (unsigned_enum)
+ TYPE_FLAGS (type) |= TYPE_FLAG_UNSIGNED;
return type;
}
^ permalink raw reply [flat|nested] 4+ messages in thread
* For gdb-4.17 : distclean and YYFILES
[not found] <19980206204523.51968@cygnus.com>
1998-02-09 21:38 ` For gdb-4.17 : COFF and C++ Philippe De Muyter
1998-02-09 21:43 ` For gdb-4.17 : COFF and unsigned enum's Philippe De Muyter
@ 1998-02-09 21:48 ` Philippe De Muyter
1998-02-09 23:09 ` Peter.Schauer
2 siblings, 1 reply; 4+ messages in thread
From: Philippe De Muyter @ 1998-02-09 21:48 UTC (permalink / raw)
To: Jason Molenda; +Cc: gdb-patches
distclean forgets some files :
Mon Feb 9 16:47:11 1998 Philippe De Muyter <phdm@macqel.be>
* Makefile.in (distclean): Add `rm $(YYFILES)'.
--- ./gdb/Makefile.in Mon Feb 9 16:44:52 1998
+++ ./gdb/Makefile.in Mon Feb 9 13:01:14 1998
@@ -707,6 +707,7 @@
rm -f nm.h tm.h xm.h config.status config.h stamp-h .gdbinit
rm -f y.output yacc.acts yacc.tmp y.tab.h
rm -f config.log config.cache
+ rm -f $(YYFILES)
rm -f Makefile
maintainer-clean realclean: distclean clean
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: For gdb-4.17 : distclean and YYFILES
1998-02-09 21:48 ` For gdb-4.17 : distclean and YYFILES Philippe De Muyter
@ 1998-02-09 23:09 ` Peter.Schauer
0 siblings, 0 replies; 4+ messages in thread
From: Peter.Schauer @ 1998-02-09 23:09 UTC (permalink / raw)
To: Philippe De Muyter; +Cc: gdb-patches
While I agree with the other two patches you sent in recently,
this one is wrong.
The released GDB will be distributed with the YYFILES, because a distribution
shouldn't require yacc/bison for the build. Obviously distclean
shouldn't remove them, realclean/maintainer-clean should be used to get
rid of YYFILES.
> distclean forgets some files :
>
> Mon Feb 9 16:47:11 1998 Philippe De Muyter <phdm@macqel.be>
>
> * Makefile.in (distclean): Add `rm $(YYFILES)'.
>
> --- ./gdb/Makefile.in Mon Feb 9 16:44:52 1998
> +++ ./gdb/Makefile.in Mon Feb 9 13:01:14 1998
> @@ -707,6 +707,7 @@
> rm -f nm.h tm.h xm.h config.status config.h stamp-h .gdbinit
> rm -f y.output yacc.acts yacc.tmp y.tab.h
> rm -f config.log config.cache
> + rm -f $(YYFILES)
> rm -f Makefile
>
> maintainer-clean realclean: distclean clean
>
>
--
Peter Schauer pes@regent.e-technik.tu-muenchen.de
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~1998-02-09 23:09 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <19980206204523.51968@cygnus.com>
1998-02-09 21:38 ` For gdb-4.17 : COFF and C++ Philippe De Muyter
1998-02-09 21:43 ` For gdb-4.17 : COFF and unsigned enum's Philippe De Muyter
1998-02-09 21:48 ` For gdb-4.17 : distclean and YYFILES Philippe De Muyter
1998-02-09 23:09 ` Peter.Schauer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox