problem making gcc-2.7.0 on DEC Unix 3.2c

From: Alex Garthwaite <alex_at_samwise.cis.upenn.edu>
Date: Fri, 25 Aug 1995 09:55:23 -0400 (EDT)

I'm in the midst of building gcc-2.7.0 on a 3000/300 running
DEC Unix 3.2c (uname reports: OSF1 samwise.cis.upenn.edu V3.2 148 alpha).
The output from config.status is:

   #!/bin/sh
   # GCC was configured as follows:
   ./configure --prefix=/pkg/gnu
   echo host=alpha-dec-osf3.2 target=alpha-dec-osf3.2 build=alpha-dec-osf3.2

Make runs fine until it gets to objc at which point the program, mips-tfile,
fails:

   if [ -d objc ]; then true; else mkdir objc; fi
   thisdir1=`pwd`; \
   srcdir1=`cd .; pwd`; \
   cd objc; \
   make -f ${srcdir1}/objc/Makefile libobjc.a \
     srcdir=${srcdir1} tooldir=/pkg/gnu/alpha-dec-osf3.2 AR="ar" AR_FLAGS="rc" \
     GCC_FOR_TARGET="${thisdir1}/xgcc -B${thisdir1}/" \
     GCC_CFLAGS=" -DIN_GCC -g -I./include"
   make[1]: Entering directory `/pkg/gnu/src/gcc-2.7.0/objc'
   /pkg/gnu/src/gcc-2.7.0/xgcc -B/pkg/gnu/src/gcc-2.7.0/ -O \
           -c -DIN_GCC -g -I./include -I. -I.. -I/pkg/gnu/src/gcc-2.7.0 -I/pkg/gnu/src/gcc-2.7.0/config hash.c
   mips-tfile, /tmp/ccaaouEa.s:0 index 4294967295 is out of bounds for lstrs, max is 0, mips-tfile.c line# 4643
   make[1]: *** [hash.o] Error 1
   make[1]: Leaving directory `/pkg/gnu/src/gcc-2.7.0/objc'
   make: *** [libobjc.a] Error 2

The lines around 4643 in mips-tfile.c read:

  for (fd = delete_ifd; fd < orig_sym_hdr.ifdMax; fd++)
    {
      register FDR *fd_ptr = ORIG_FILES (fd);
      register char *filename = ORIG_LSTRS (fd_ptr->issBase + fd_ptr->rss); // line 4643

      /* file support itself. */
      add_file (filename, filename + strlen (filename));
      remap_file_number[fd] = cur_file_ptr->file_index;
    }

It appears that on one of the iterations though this loop, the
argument to macro ORIG_LSTRS has a value of -1. This is then compared
to an allowed maximum value (as unsigned longs) of 0 and found to
be too large.

What is puzzling is that the same steps work fine on a system running
DEC OSF1 3.2a but that is otherwise identical to this one. I have tried
removing all optimization (-O) flags from the makefiles but that has
no effect. I have also poked around the header files and found
superficial changes in sym.h between 3.2a and 3.2c so I am beginning
to suspect the problem may be in changes to the object files that
are generated under 3.2c. If anyone has any suggestions or fixes,
I'd appreciate it. Thanks.

                     -- Alex


-- 
Alex Garthwaite                                  Internet: alex_at_cis.upenn.edu
Systems Programmer                           Computer and Information Science
University of Pennsylvania                                     (215) 898-5617
Received on Fri Aug 25 1995 - 16:24:00 NZST

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:45 NZDT