diff -c dist/_ctorlist.c /fs3/InterViews/iv/src/libInterViews/_ctorlist.c
*** dist/_ctorlist.c	Wed Sep 27 17:22:51 1989
--- /fs3/InterViews/iv/src/libInterViews/_ctorlist.c	Mon Aug 13 10:45:57 1990
***************
*** 26,31 ****
--- 26,32 ----
  
  #if defined(__GNUG__)
  
+ #ifndef GASCOFF		/* these are generated on loader directive file */
  typedef void (*PF)();
  
  struct PFList {
***************
*** 34,38 ****
  };
  
  PFList __CTOR_LIST__;
! 
  #endif
--- 35,39 ----
  };
  
  PFList __CTOR_LIST__;
! #endif /* GASCOFF */
  #endif
diff -c dist/_dtorlist.c /fs3/InterViews/iv/src/libInterViews/_dtorlist.c
*** dist/_dtorlist.c	Wed Sep 27 17:22:52 1989
--- /fs3/InterViews/iv/src/libInterViews/_dtorlist.c	Mon Aug 13 10:46:25 1990
***************
*** 25,31 ****
   */
  
  #if defined(__GNUG__)
! 
  typedef void (*PF)();
  
  struct PFList {
--- 25,31 ----
   */
  
  #if defined(__GNUG__)
! #ifndef GASCOFF		/* these are generated on loader directive file */
  typedef void (*PF)();
  
  struct PFList {
***************
*** 35,39 ****
  };
  
  PFList __DTOR_LIST__;
! 
  #endif
--- 35,39 ----
  };
  
  PFList __DTOR_LIST__;
! #endif /* GASCOFF */
  #endif
diff -c dist/_init.c /fs3/InterViews/iv/src/libInterViews/_init.c
*** dist/_init.c	Wed Sep 27 17:32:57 1989
--- /fs3/InterViews/iv/src/libInterViews/_init.c	Mon Aug 13 10:52:48 1990
***************
*** 33,38 ****
--- 33,45 ----
      PF f[1];	/* really PF f[count]; */
  };
  
+ #ifdef GASCOFF
+ extern PFList __DTOR_LIST__;
+ 
+ extern int __CTOR_LEN__;
+ extern int __DTOR_LEN__;
+ #endif
+ 
  extern PFList __CTOR_LIST__;
  
  #if defined(__cplusplus)
***************
*** 40,45 ****
--- 47,58 ----
  #endif
  
  int __main() {
+ 
+ #ifdef GASCOFF
+   __CTOR_LIST__.count = (int) &__CTOR_LEN__;
+   __DTOR_LIST__.count = (int) &__DTOR_LEN__;
+ #endif
+ 
      PFList* list = &__CTOR_LIST__;
      PF* end = &list->f[list->count];
      for (PF* f = &list->f[0]; f < end; f++) {
