[gnu.g++.bug] bug in collect.c COFF support

andrew@frip.WV.TEK.COM (Andrew Klossner) (08/02/89)

In collect.c, when COFF is defined, procedure process() doesn't
initialize local variable "ldptr".  It should be initialized to NULL
for the system V ldopen() routine to work correctly.

  -=- Andrew Klossner   (uunet!tektronix!frip.WV.TEK!andrew)    [UUCP]
                        (andrew%frip.wv.tek.com@relay.cs.net)   [ARPA]

grunwald@flute.cs.uiuc.edu (Dirk Grunwald) (08/02/89)

argle - sorry about that. As a side note, I wonder if other people
have noticed a problem with collect when you use -g0 on COFF systems;
an old (I think 1.35 had it, because I had to re-find the bug)
sdbout.c in g++ produced negative sizes for certain structs; this
caused COFF on the Encore multimax.  to barf. Do other people have
this problem? I've fixed sdbout.c & the patches will be in 1.36, but
I'm wondering if this is somethat that should be reported to Encore as
well.

here's a patch for MDT.

*** collect.c	Tue Aug  1 22:14:04 1989
--- collect.c.orig	Tue Aug  1 22:13:47 1989
***************
*** 258,264 ****
       FILE *fp;
       char *filename;
  {
!   LDFILE *ldptr = NULL;
    do {
      if ((ldptr = ldopen(filename, ldptr)) != NULL ) {
        
--- 258,264 ----
       FILE *fp;
       char *filename;
  {
!   LDFILE *ldptr;
    do {
      if ((ldptr = ldopen(filename, ldptr)) != NULL ) {
        

--
Dirk Grunwald -- Univ. of Illinois 		  (grunwald@flute.cs.uiuc.edu)