Xref: utzoo comp.lang.c++:1955 comp.windows.x:6087 Path: utzoo!attcan!uunet!husc6!bloom-beacon!bu-cs!purdue!decwrl!labrea!lindy!calder@lurch.stanford.edu From: calder@lurch.stanford.edu (Paul Calder) Newsgroups: comp.lang.c++,comp.windows.x Subject: Re: Help! Trying to build InterViews 2.3 ... Summary: Bugs in cfront Keywords: InterViews,AT&T,cfront,AARRGGHH Message-ID: <1054@lindy.Stanford.EDU> Date: 11 Nov 88 21:23:19 GMT References: <1266@luth.luth.se> Sender: news@lindy.Stanford.EDU Reply-To: calder@lurch.stanford.edu (Paul Calder) Followup-To: comp.lang.c++ Organization: Stanford University Lines: 46 In-reply-to: taube@sm.luth.se (Lars-Gunnar Taube) I have started to build InterViews 2.3 (coming with X11.R2) on our SUN-3:s under SunOS 3.5 with AT&T cfront 1.2.1. So far, no good. This is a bug in cfront that is tickled by InterViews. As you correctly point out, the problem is in expand.c. Here are the cdiffs. 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 );