montnaro@sprite.crd.ge.com (Skip Montanaro) (09/01/89)
Convex defines the nlist struct somewhat differently than Sun or Stellar (I'm not familiar with other Unix dialects): struct nlist { union { char *n_name; /* for use when in core */ long n_strx; /* index into string table */ } n_un; /* union for name and string index */ unsigned char n_type; /* type flag, see below */ char n_other; /* unused */ short n_desc; /* see <stab.h> */ unsigned long n_value; /* value of symbol (or sdb offset) */ }; The compiler complains about the use of n_name when compiling load.c, so I changed load.c to reflect this for the Convex. If this is a feature of more than just Convex's environment a more general test is in order. *** load.c~ Fri Jul 14 14:21:55 1989 --- load.c Thu Aug 31 23:42:23 1989 *************** *** 151,154 **** --- 151,155 ---- struct nlist nl[2]; + #if !defined(convex) #ifdef NLIST_NAME_ARRAY strcpy (nl[0].n_name, LDAV_SYMBOL); *************** *** 158,161 **** --- 159,166 ---- nl[1].n_name = 0; #endif /* NLIST_NAME_ARRAY. */ + #else /* convex */ + nl[0].n_un.n_name = LDAV_SYMBOL; + nl[1].n_un.n_name = 0; + #endif /* convex */ if (nlist (KERNEL_FILE, nl) < 0 || nl[0].n_type == 0)