[comp.sys.amiga] Interesting Lattice bug

bryan@geo-works.UUCP (Bryan Ford) (07/22/89)

After reading all the messages about the unreliability of the Global
Optimizer, you might find this interesting.

A few weeks ago I was recompiling parts of a program of mine, and on one
module (which happened to be the largest one in the program, about 23K),
LC1 compiled the thing perfectly, without even a warning, but LC2 aborted
in the middle with 'CXERR 645'.  Not even a line number or anything.  I
suspect it has to do with the size of the module somehow, although I know
that much bigger modules have been compiled with Lattice.

I was stumped.  Not until yesterday could I find a way to get around the
bug.  Then I thought that, since re-arranging code often helps get around
compiler bugs, and re-arranging code is what the Global Optimizer does
best, I stuck in GO between LC1 and LC2 (I normally don't do this during
development), and tried it, and it worked!  (And the module ran fine as
well.)

This could have been caused by GO decreasing the size of the code, or
because of the code being re-arranged by it, or something entirely
different.  

I still haven't 'solved' the problem, though, and I'd like to know what
CXERR 645 is (the ones listed in the manual only go up to about 30 or so).
Is anyone from Lattice listening?

				Bryan

--

     _______________________________________
   _/   Bryan Ford - bryan@geo-works.uucp   \_
 _/  ..!utah-cs!caeco!i-core!geo-works!bryan  \_
/ ..!uunet!iconsys!caeco!i-core!geo-works!bryan \
\_____________Author: Chroma Paint______________/

COSC60I@jane.uh.edu (Bandolar) (07/26/89)

> 
> A few weeks ago I was recompiling parts of a program of mine, and on one
> module (which happened to be the largest one in the program, about 23K),
> LC1 compiled the thing perfectly, without even a warning, but LC2 aborted
> in the middle with 'CXERR 645'.  Not even a line number or anything.  I
> suspect it has to do with the size of the module somehow, although I know
> that much bigger modules have been compiled with Lattice.
> 
> I still haven't 'solved' the problem, though, and I'd like to know what
> CXERR 645 is (the ones listed in the manual only go up to about 30 or so).
> Is anyone from Lattice listening?
> 
> 				Bryan

I had something similar happen with one of my programs and it turned out to
be a function had been left out of the math library.  I reordered the
libraries in the make file and it cleared up.  Lattice later included my
functions (they were related to floating point numbers) in a later fix.
Hope this helps....
--
Stephen McLeod, (Native Texican)| Interests: SF/Gaming, Artist, French,
Samurai Programmer		| Computers, the SCA and friendly people!
Vote Spock,  The logical choice!| So, whaduya wanna be when you grow up?