giacomet@venus.ecn.purdue.edu (Frederic B Giacometti) (09/08/90)
While compiling a class I got the following message:
Pass 4 on class matrix3: internal error (code: 4TYGC2)
Please send information regarding this error
to Interactive Software Engineering
----------------------------------------------------
As an obedient person, here I am:
My class matrix3 had the following feature:
cell( i, j: INTEGER ): PARAM_REAL is
-- value of cell (i, j)
In another feature definition I had the following line:
Result := cell(1,1)*some stuff
The crash would occur at that point.
I fixed this quick and dirty by defining the variable/features:
a11: like cell is do Result := cell(1, 1) end;
.
-- 9 coefficients of my 3x3 matrix
.
a33: like cell is do Result := cell(3, 3) end;
and replaced the crashing cell(i, j) by aij's.
Since, I'm here, I can report another case I ran into: the double
definition of a feature in a same class is not detected in the 4
compilation passes and makes the c-compilation crash.
Finally, i got to signal an inconsistency relating to REAL constants:
The `pi' constant from the MATH_CONSTANT library is defined as a REAL.
Still, if we have
inherit MATH_CONSTANT
feature
.
.
value: REAL;
.
.
value := pi;
Then the test `value = pi' will return `false'. This seems pretty much
inconsistant to me, since `true' would be expected; am I not right ?
Frederic Giacometti