[comp.text] TeX compile bug on Xenix?

tony@ajfcal.UUCP (Tony Field) (01/28/89)

I am attempting to build TeX 2.9 in C from the University of Washington
distribution files. My system is Xenix 2.2.3/386 with a 2.2.1/386
development system (i.e. reasonably recent).

For some reason *tangle* does not seem to execute correctly when:
 
                tangle tex.web ctex.ch

is executed.  I therefore cannot build the tex.pool file.

It seems that tangle cannot find the matching @x-@y-@z triplets in
ctex.ch:  they are validly constructed in the file.

		(cd web2cdir; make)
		(cd TeXware; make tangle)
		(cd texdir; make)
		../TeXware/tangle tex.web ctex.ch
	This is TANGLE, C Version 2.8
	*1*17*25*38*54*72*99*110*115*133*162
	! Where is the matching @z?. (change file l.691044907)
	@y
<<<< note: there is a proper @z at line 203 that matches @y at line 162 >>>>
   
	! @d is ignored in Pascal text. (change file l.691044912)
	@d
	   free==free_arr 
	! Missing ). (l.845)
	@ 
	  If \TeX\ is extended improperly, the |mem| array might get 
	  screwed up. 
	! Sorry, text capacity exceeded. (l.845)
	@ 
	  If \TeX\ is extended improperly, the |mem| array might get 
	  screwed up.

I tried a few *obvious* modifications to tangle.c - none of which worked.

I believe that this is a result of a *broken compiler* since I have also
noticed that the compiler became upset when compiling tex5.c. This was
a compiler bug and was easy to work around.

Has anyone had the same problem and can provide a fix????
Will a more recent edition of TeX work correctly???

         thankyou......             tony.....
-- 
+------------------------------------
|  Tony Field                       ..alberta!calgary!xenlink!ajfcal!tony
|  Calgary, Alberta, Canada

usenet@cps3xx.UUCP (Usenet file owner) (01/29/89)

I had the same problem.  Best solution I could find was to run
tangle on a Vax and then I was able to compile the .c files on
my machine (386 2.1 development system) with little trouble.

==larry

---------------------------
LARRY SHIELDS                        UUCP: ...!frith!lunapark!larry
P.O. Box 6159                        BIX:  lshields
E. Lansing, MI 48826                 Compuserve: 70277, 3677

BBS: lunapark 1200 7-1-E / 2400 8-1-N  24hrs  (517) 487-3356 login: bbs

chip@ateng.ateng.com (Chip Salzenberg) (02/04/89)

According to tony@ajfcal.UUCP (Tony Field):
>I am attempting to build TeX 2.9 in C from the University of Washington
>distribution files. My system is Xenix 2.2.3/386 with a 2.2.1/386
>development system (i.e. reasonably recent).
>
>For some reason *tangle* does not seem to execute correctly when:
>                tangle tex.web ctex.ch
>is executed.  I therefore cannot build the tex.pool file.
>
>I believe that this is a result of a *broken compiler* [...]

Yes, it is a broken compiler.

I had a similar problem, but now I have a working TeX under Xenix. (But see
below.) The Microsoft compiler is broken in several ways when it comes to
using 8-bit and 16-bit quantities.  For example:

	char a;
	unsigned short b;
	char c[3][50000];

	main()
	{
	    /* ... */
	    c[a][b] = 1;
	}

is broken.  Incorrect code is generated when generating the intermediate
value "a * 50000": a signed 16x16 multiply is used, instead of an unsigned
multiply.

My "solution" was this:  change the definitions of "integer" and "schar",
as well as the typedefs in tangle itself, to all be "int" or "unsigned".
(With the exception of "eightbits", which I left as "unsigned char".)
No 16-bit manipulation is required, and tangle works.

My tex passes the trip test, so I guess I've got a working tex.

However -- I can't output!  Does anyone know of a Laserjet driver that
doesn't require a Pascal compiler?  I have no way to output my dvi files!
-- 
Chip Salzenberg             <chip@ateng.com> or <uunet!ateng!chip>
A T Engineering             Me?  Speak for my company?  Surely you jest!
	  "It's no good.  They're tapping the lines."

debra@alice.UUCP (Paul De Bra) (02/05/89)

In article <1989Feb3.130901.2920@ateng.ateng.com> chip@ateng.ateng.com (Chip Salzenberg) writes:
}According to tony@ajfcal.UUCP (Tony Field):
}>I am attempting to build TeX 2.9 in C from the University of Washington
}>distribution files. My system is Xenix 2.2.3/386 with a 2.2.1/386
}>development system (i.e. reasonably recent).
}>
}>For some reason *tangle* does not seem to execute correctly when:
}>                tangle tex.web ctex.ch
>>is executed.  I therefore cannot build the tex.pool file.
}>
}>I believe that this is a result of a *broken compiler* [...]
}
}Yes, it is a broken compiler.
}

The compiler is broken indeed. I got Tex 2.0 way back when there was no
C-version available. (or web2c) Tangled everything to Pascal, then translated
into C using a cross-compiler, then hacked it for a couple of months and
finally got it to work with SCO Xenix 2.2.1 for the 286.

Has been posted on comp.unix.xenix (last december) and is in the queue for
comp.sources.unix (since last september).

Paul.
-- 
------------------------------------------------------
|debra@research.att.com   | uunet!research!debra     |
------------------------------------------------------

mcdonald@uxe.cso.uiuc.edu (02/06/89)

I would like to get a "Gigantic TeX" for my 386 PC, presumably C source.
I have a mostly Unix compatible but not ANSI C compiler which
is 32bit ints and pointers, flat addresses.  I have 4 megabytes.
I can unshar and de-compress things, and ftp, but at the moment am
stumped by files with .tar. in them, whatever that is.
Any ideas?

Doug McDonald (mcdonald@uxe.cso.uiuc.edu)