From ec06a3cb25f86ac6f0e748b22ca3fefe888162e0 Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Wed, 23 Jun 1993 19:20:49 +0000 Subject: [PATCH] * dbxread.c (copy_pending): Change name and function of begi argument to endi, since that is what the caller needs. --- gdb/ChangeLog | 3 +++ gdb/dbxread.c | 21 ++++++++++++++------- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 1a0c12f..3753b24 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,8 @@ Wed Jun 23 00:25:58 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + * dbxread.c (copy_pending): Change name and function of begi argument + to endi, since that is what the caller needs. + * Makefile.in (TAGFILES): Don't include YYFILES. * Makefile.in (HFILES): Include monitor.h. diff --git a/gdb/dbxread.c b/gdb/dbxread.c index 65a9fec..4c33fe6 100644 --- a/gdb/dbxread.c +++ b/gdb/dbxread.c @@ -1914,23 +1914,30 @@ process_one_symbol (type, desc, valu, name, section_offsets, objfile) } /* Copy a pending list, used to record the contents of a common - block for later fixup. */ + block for later fixup. We copy the symbols starting with all + symbols in BEG, and ending with the symbols which are in + END at index ENDI. */ static struct pending * -copy_pending (beg, begi, end) +copy_pending (beg, endi, end) struct pending *beg; - int begi; + int endi; struct pending *end; { struct pending *new = 0; struct pending *next; + int j; - for (next = beg; next != 0 && (next != end || begi < end->nsyms); - next = next->next, begi = 0) + /* Copy all the struct pendings before end. */ + for (next = beg; next != NULL && next != end; next = next->next) { - register int j; - for (j = begi; j < next->nsyms; j++) + for (j = 0; j < next->nsyms; j++) add_symbol_to_list (next->symbol[j], &new); } + + /* Copy however much of END we need. */ + for (j = endi; j < end->nsyms; j++) + add_symbol_to_list (end->symbol[j], &new); + return new; } -- 2.7.4