any symbols in them.  There can be a lot of them.  */ struct partial_symtab *prev_pst;
any symbols in them.  There can be a lot of them.  */
static struct partial_symtab *xcoff_end_psymtab  PARAMS ((struct partial_symtab *, char **, int, int,	   struct partial_symtab **, int, int));/* Close off the current usage of PST.     Returns PST, or NULL if the partial symtab was empty and thrown away.   CAPPING_SYMBOL_NUMBER is the end of pst (exclusive).   INCLUDE_LIST, NUM_INCLUDES, DEPENDENCY_LIST, and NUMBER_DEPENDENCIES   are the information for includes and dependencies.  */static struct partial_symtab *xcoff_end_psymtab (pst, include_list, num_includes, capping_symbol_number,		   dependency_list, number_dependencies, textlow_not_set)     struct partial_symtab *pst;     char **include_list;     int num_includes;     int capping_symbol_number;     struct partial_symtab **dependency_list;     int number_dependencies;     int textlow_not_set;{  int i;  struct objfile *objfile = pst -> objfile;  if (capping_symbol_number != -1)    ((struct symloc *)pst->read_symtab_private)->numsyms =      capping_symbol_number	- ((struct symloc *)pst->read_symtab_private)->first_symnum;  ((struct symloc *)pst->read_symtab_private)->lineno_off =    first_fun_line_offset;  first_fun_line_offset = 0;  pst->n_global_syms =    objfile->global_psymbols.next - (objfile->global_psymbols.list + pst->globals_offset);  pst->n_static_syms =    objfile->static_psymbols.next - (objfile->static_psymbols.list + pst->statics_offset);  pst->number_of_dependencies = number_dependencies;  if (number_dependencies)    {      pst->dependencies = (struct partial_symtab **)	obstack_alloc (&objfile->psymbol_obstack,		       number_dependencies * sizeof (struct partial_symtab *));      memcpy (pst->dependencies, dependency_list,	     number_dependencies * sizeof (struct partial_symtab *));    }  else    pst->dependencies = 0;  for (i = 0; i < num_includes; i++)    {      struct partial_symtab *subpst =	allocate_psymtab (include_list[i], objfile);      subpst->section_offsets = pst->section_offsets;      subpst->read_symtab_private =	  (char *) obstack_alloc (&objfile->psymbol_obstack,				  sizeof (struct symloc));      ((struct symloc *)subpst->read_symtab_private)->first_symnum = 0;      ((struct symloc *)subpst->read_symtab_private)->numsyms = 0;      subpst->textlow = 0;      subpst->texthigh = 0;      /* We could save slight bits of space by only making one of these,	 shared by the entire set of include files.  FIXME-someday.  */      subpst->dependencies = (struct partial_symtab **)	obstack_alloc (&objfile->psymbol_obstack,		       sizeof (struct partial_symtab *));      subpst->dependencies[0] = pst;      subpst->number_of_dependencies = 1;      subpst->globals_offset =	subpst->n_global_syms =	  subpst->statics_offset =	    subpst->n_static_syms = 0;      subpst->readin = 0;      subpst->symtab = 0;      subpst->read_symtab = pst->read_symtab;    }  sort_pst_symbols (pst);  /* If there is already a psymtab or symtab for a file of this name,     remove it.  (If there is a symtab, more drastic things also     happen.)  This happens in VxWorks.  */  free_named_symtabs (pst->filename);  if (num_includes == 0      && number_dependencies == 0      && pst->n_global_syms == 0      && pst->n_static_syms == 0)    {      /* Throw away this psymtab, it's empty.  We can't deallocate it, since	 it is on the obstack, but we can forget to chain it on the list.  */      /* Empty psymtabs happen as a result of header files which don't have	 any symbols in them.  There can be a lot of them.  */      struct partial_symtab *prev_pst;      /* First, snip it out of the psymtab chain */      if (pst->objfile->psymtabs == pst)	pst->objfile->psymtabs = pst->next;      else	for (prev_pst = pst->objfile->psymtabs; prev_pst; prev_pst = pst->next)	  if (prev_pst->next == pst)	    prev_pst->next = pst->next;      /* Next, put it on a free list for recycling */      pst->next = pst->objfile->free_psymtabs;      pst->objfile->free_psymtabs = pst;      /* Indicate that psymtab was thrown away.  */      pst = (struct partial_symtab *)NULL;    }  return pst;}