From 4c07f28d773c899f7cc1270dd32c5a376b3771ee Mon Sep 17 00:00:00 2001 From: Fred Fish Date: Mon, 15 Jun 1992 19:25:13 +0000 Subject: [PATCH] * Makefile.in (VERSION): Bump to 4.5.5. * symtab.c (decode_line_1): Until C++ support stabilizes, when C++ lookups fail, print possibly helpful hint about completion. * cplus-dem.c (demangle_signature): Fix ARM style demangling for static data members. * dbxread.c (dbx_psymtab_to_symtab_1): Fix prototype. * config/ncr3000.mh (INSTALL): Don't use /usr/ucb/install, it's broken on ncr3000's. --- gdb/ChangeLog | 11 +++++++++++ gdb/Makefile.in | 10 +++++----- gdb/config/ncr3000.mh | 7 ++++--- gdb/cplus-dem.c | 10 ++++++++-- gdb/dbxread.c | 18 ++++++++---------- 5 files changed, 36 insertions(+), 20 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 274fab78af0..51ca98e1acb 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,14 @@ +Mon Jun 15 12:21:45 1992 Fred Fish (fnf@cygnus.com) + + * Makefile.in (VERSION): Bump to 4.5.5. + * symtab.c (decode_line_1): Until C++ support stabilizes, when + C++ lookups fail, print possibly helpful hint about completion. + * cplus-dem.c (demangle_signature): Fix ARM style demangling + for static data members. + * dbxread.c (dbx_psymtab_to_symtab_1): Fix prototype. + * config/ncr3000.mh (INSTALL): Don't use /usr/ucb/install, + it's broken on ncr3000's. + Mon Jun 15 07:21:00 1992 Fred Fish (fnf@cygnus.com) * dwarfread.c (decode_modified_type): Change type of first arg. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 8b9f58da997..22d2b5baa12 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -74,8 +74,8 @@ srcdir = . # CFLAGS section if your system doesn't have fcntl.h in /usr/include (which # is where it should be according to Posix). -YACC=byacc -# YACC=yacc +BISON=yacc +YACC=$(BISON) MAKE=make # Documentation (gdb.dvi) needs either GNU m4 or SysV m4; @@ -163,7 +163,7 @@ CDEPS = ${XM_CDEPS} ${TM_CDEPS} ${BFD_LIB} ${MMALLOC_LIB} ${LIBIBERTY} \ ADD_FILES = ${REGEX} ${ALLOCA} ${XM_ADD_FILES} ${TM_ADD_FILES} ADD_DEPS = ${REGEX1} ${ALLOCA1} ${XM_ADD_FILES} ${TM_ADD_FILES} -VERSION = 4.5.4 +VERSION = 4.5.5 DIST=gdb LINT=/usr/5bin/lint @@ -341,8 +341,8 @@ init.c: $(srcdir)/munch $(OBS) $(TSOBS) $(srcdir)/munch ${MUNCH_DEFINE} $(OBS) $(TSOBS) > init.c gdb: $(OBS) $(TSOBS) ${ADD_DEPS} ${CDEPS} init.o - ${CC-LD} $(LDFLAGS) -o gdb init.o $(OBS) $(TSOBS) $(ADD_FILES) \ - $(CLIBS) $(LOADLIBES) + ${CC-LD} $(GLOBAL_CFLAGS) $(LDFLAGS) -o gdb \ + init.o $(OBS) $(TSOBS) $(ADD_FILES) $(CLIBS) $(LOADLIBES) saber_gdb: $(SFILES) $(DEPFILES) copying.c version.c #setopt load_flags $(CFLAGS) -I$(BFD_DIR) -DHOST_SYS=SUN4_SYS diff --git a/gdb/config/ncr3000.mh b/gdb/config/ncr3000.mh index d311a6e5b11..03069fb1e70 100644 --- a/gdb/config/ncr3000.mh +++ b/gdb/config/ncr3000.mh @@ -1,7 +1,7 @@ # Host: Intel 386 running SVR4. # The NCR 3000 ships with a MetaWare compiler installed as /bin/cc. -# This compiler not only emits abnoxious copyright messages every time +# This compiler not only emits obnoxious copyright messages every time # you run it, but it chokes and dies on a whole bunch of GNU source # files. Default to using the AT&T compiler installed in /usr/ccs/ATT/cc. # Unfortunately though, the AT&T compiler sometimes generates code that @@ -35,5 +35,6 @@ ALLOCA1=alloca.o # new terminfo interface and latest terminal descriptions. TERMCAP=-ltermlib -# SVR4 puts the BSD compatible install in /usr/ucb. -INSTALL = /usr/ucb/install -c +# The /usr/ucb/install program is incompatible (complains about unknown +# group staff). Use good old cp... +INSTALL = cp diff --git a/gdb/cplus-dem.c b/gdb/cplus-dem.c index 6dfd6fa3242..18418f0b815 100644 --- a/gdb/cplus-dem.c +++ b/gdb/cplus-dem.c @@ -529,9 +529,15 @@ demangle_signature (declp, mangled, work) } if (success && !func_done) { - /* Even with ARM style demangling, sometimes there is no explicit - function argument tokens if the function takes no arguments. */ +#ifdef GNU_DEMANGLING + /* With GNU style demangling, bar__3foo is 'foo::bar(void)', and + bar__3fooi is 'foo::bar(int)'. We get here when we find the + first case, and need to ensure that the '(void)' gets added to + the current declp. Note that with ARM_DEMANGLING, the first + case represents the name of a static data member 'foo::bar', + which is in the current declp, so we leave it alone. */ success = demangle_args (declp, mangled, work); +#endif } if (success && work -> static_type && PRINT_ARG_TYPES) { diff --git a/gdb/dbxread.c b/gdb/dbxread.c index 647a96f66da..7cbdbe13fe3 100644 --- a/gdb/dbxread.c +++ b/gdb/dbxread.c @@ -227,7 +227,7 @@ static void dbx_psymtab_to_symtab PARAMS ((struct partial_symtab *)); static void -psymtab_to_symtab_1 PARAMS ((struct partial_symtab *, int)); +dbx_psymtab_to_symtab_1 PARAMS ((struct partial_symtab *)); static void read_dbx_symtab PARAMS ((CORE_ADDR, struct objfile *, CORE_ADDR, int)); @@ -1144,9 +1144,8 @@ end_psymtab (pst, include_list, num_includes, capping_symbol_offset, } static void -psymtab_to_symtab_1 (pst, sym_offset) +dbx_psymtab_to_symtab_1 (pst) struct partial_symtab *pst; - int sym_offset; { struct cleanup *old_chain; int i; @@ -1176,7 +1175,7 @@ psymtab_to_symtab_1 (pst, sym_offset) wrap_here (""); /* Flush output */ fflush (stdout); } - psymtab_to_symtab_1 (pst->dependencies[i], sym_offset); + dbx_psymtab_to_symtab_1 (pst->dependencies[i]); } if (LDSYMLEN(pst)) /* Otherwise it's a dummy */ @@ -1184,10 +1183,11 @@ psymtab_to_symtab_1 (pst, sym_offset) /* Init stuff necessary for reading in symbols */ buildsym_init (); old_chain = make_cleanup (really_free_pendings, 0); - - /* Read in this files symbols */ - bfd_seek (pst->objfile->obfd, sym_offset, L_SET); file_string_table_offset = FILE_STRING_OFFSET (pst); + symbol_size = SYMBOL_SIZE (pst); + + /* Read in this file's symbols */ + bfd_seek (pst->objfile->obfd, SYMBOL_OFFSET (pst), L_SET); pst->symtab = read_ofile_symtab (pst->objfile, LDSYMOFF(pst), LDSYMLEN(pst), pst->textlow, pst->texthigh - pst->textlow, @@ -1231,11 +1231,9 @@ dbx_psymtab_to_symtab (pst) sym_bfd = pst->objfile->obfd; - symbol_size = SYMBOL_SIZE(pst); - next_symbol_text_func = dbx_next_symbol_text; - psymtab_to_symtab_1 (pst, SYMBOL_OFFSET (pst)); + dbx_psymtab_to_symtab_1 (pst); /* Match with global symbols. This only needs to be done once, after all of the symtabs and dependencies have been read in. */ -- 2.30.2