heurisko bug no. 6041

This applies to heurisko 6.0 and higher.

Symptoms

The renew command crashes heurisko if used with a parameter object of a user-defined operator.

Example:
ubyte x[*ny][*nx];
operator out = op();
ushort mx, my;
mx = ...; my = ...;
global renew ubyte out[my][mx];
endoperator;
x = op();

Cause

Not yet known.

Workaround

Maybe a parameter selecting a global object is an acceptable workaround.

Example:
ubyte x[*ny][*nx], y[*ny][*nx];
operator op(sel);
ushort mx, my;
mx = ...; my = ...;
switch(sel);
case 1; global renew ubyte x[my][mx];
case 2; global renew ubyte y[my][mx];
endswitch;
endoperator;
op(1);

Fix

This bug is not yet fixed.

Back to overview