Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!umd5!uvaarpa!mcnc!decvax!decwrl!labrea!Shasta!interran From: interran@Shasta.STANFORD.EDU (John Interrante) Newsgroups: comp.windows.x Subject: Re: Compiling InterViews Message-ID: <2624@Shasta.STANFORD.EDU> Date: 1 Apr 88 18:31:16 GMT References: <8803271913.AA05391@bu-cs.bu.edu> Reply-To: interran@shasta.stanford.edu (John Interrante) Organization: Stanford University Lines: 57 Summary: cfront's fault, fix enclosed Date: Thu, 31 Mar 88 22:37:18 pst From: linton@lurch.stanford.edu (Mark Linton) To: interran@shasta.stanford.edu Subject: Re: FYI Could you send this reply to the net? I've been getting this question a lot. There is a nil pointer dereference in cfront that causes it to fault on Suns (or any machine that doesn't like that) when compiling InterViews. It is not a problem on a VAX. The relevant diffs (new,old) are below. Please send all questions about InterViews to Mark Linton at linton@lurch.stanford.edu or ucbvax!linton. src/expand.c *************** *** 79,87 **** { int val = 0, tmp = 1; Pexpr ee = e->e1; ! if ( ee == 0 || ee->tp == 0 ) { ! return 0; ! } xxx: switch( ee->tp->base ) { --- 79,85 ---- { int val = 0, tmp = 1; Pexpr ee = e->e1; ! if ( ee->tp == 0 ) return 0; xxx: switch( ee->tp->base ) { *************** *** 95,101 **** } if ( tmp == 1 ) { ! tmp++; if ((ee = e->e2) && ee->tp) goto xxx; } return( val ); --- 93,99 ---- } if ( tmp == 1 ) { ! tmp++; if (ee = e->e2) goto xxx; } return( val ); -- John Interrante Computer System Laboratory, Stanford University interran@shasta.stanford.edu