Gcc is an ansi compiler and our include files are intended for
ansi compilation, so I needed two changes to declarations:

; diff -c src/iconx/rproto.^(h.orig h)
*** src/iconx/rproto.h.orig	Wed May  9 17:23:35 1990
--- src/iconx/rproto.h	Tue Dec 10 10:56:08 1991
***************
*** 2,7 ****
--- 2,10 ----
   * rproto.h -- prototypes for run-time functions.
   */
  
+ #if !__STDC__
+ #define const /**/
+ #endif
  
  int	bfunc		Params((noargs));
  int	coswitch	Params((word *old, word *new, int first));
***************
*** 260,266 ****
  #if UNIX || VMS
  char	*brk			Params((char *addr));
  char	*sbrk			Params((int incr));
! FILE	*popen			Params((char * command, char *type));
  #endif                                  /* UNIX || VMS */
  
  #ifdef EvalTrace
--- 263,269 ----
  #if UNIX || VMS
  char	*brk			Params((char *addr));
  char	*sbrk			Params((int incr));
! FILE	*popen			Params((const char *command, const char *type));
  #endif                                  /* UNIX || VMS */
  
  #ifdef EvalTrace
; diff -c src/h/config.^(h.orig h)
*** src/h/config.h.orig	Wed May  9 17:23:40 1990
--- src/h/config.h	Tue Dec 10 12:43:20 1991
***************
*** 168,174 ****
  #endif					/* ExecImages */
  
  #ifndef AllocType
! #define AllocType unsigned int
  #endif					/* AllocType */
  
  typedef AllocType msize;
--- 168,174 ----
  #endif					/* ExecImages */
  
  #ifndef AllocType
! #define AllocType size_t
  #endif					/* AllocType */
  
  typedef AllocType msize;


In define.h I added Standard and removed NoCoexpr.  The greater value of
MaxHdr is needed for the Apollo vendor compiler, but not gcc.
  
At present the Apollo gcc does not have a debugger, nor libg.a,
so I leave off the -g compiler option.

; diff -c config/unix/domain_bsd/iconx.^(hdr.orig hdr)
; *** config/unix/domain_bsd/iconx.hdr.orig	Wed May  9 17:28:20 1990
--- config/unix/domain_bsd/iconx.hdr	Tue Dec 10 13:46:59 1991
***************
*** 1,4 ****
  SHELL=/bin/sh
! CFLAGS= -g
! LDFLAGS=-g
  RSWITCH=rswitch.c
--- 1,4 ----
  SHELL=/bin/sh
! CFLAGS= -O
! LDFLAGS=
  RSWITCH=rswitch.c

I always give "CC=gcc" as an argument to make.
The resulting Icon compiled and passed the tests, excepting for
some small strangeness with floating point I/O formats.
It also has compiled and run a medium-small application.


Vincent Broman,  code 572, Naval Ocean Systems Center, San Diego, CA 92152, USA
Phone: +1 619 553 1641    Internet: broman@nosc.mil   Uucp: sdcsvax!nosc!broman

