[gnu.g++.bug] gcc.c in latest g++.xtar.Z

grunwald@FOOBAR.COLORADO.EDU (Dirk Grunwald) (10/18/89)

There's a slight error w.r.t. collect. My patches from two versions
ago were applied to the source of one version ago; this causes the
USE_COLLECT patch to land in the middle of the do_spec call to ld. The
correct source should look like (sorry, forgot to make RCS file, so no diff)


  /* Run ld to link all the compiler output files.  */

  if (error_count == 0)
    {
      int tmp = execution_count;
      value = do_spec (link_spec);
      if (value < 0)
	error_count = 1;
      linker_was_run = (tmp != execution_count);
    }

#ifdef USE_COLLECT
      /* C++: now collect all the requirements for
	 calling global constructors and destructors,
	 and write them to a file.  We will link this file
	 in when we run.  */
      if (linker_was_run && ! error_count)
	{
	  int tmp = execution_count;
	  value = do_spec (collect_spec);
	  if (value < 0)
	    error_count = 1;
	  linker_was_run &= (tmp != execution_count);
	}
#endif