Re: RSI's answer [message #38438] |
Mon, 08 March 2004 02:32 |
Nuno Oliveira
Messages: 75 Registered: October 2003
|
Member |
|
|
pro junk1
s = { roi:ptr_new(replicate({ mask:bytarr(10,10) }, 5)) }
n = 1
blob = [4,8,13]
((*s.roi)[n].mask)[blob] = 255b
end
Under IDL 6.0, I get:
% Internal error: Interpreter stack not aligned properly during user return.
% Internal error: The Interpreter stack is not empty on exit.
Using my development build, I get:
% Expression must be named variable in this context: <BYTE Array[10,
10]>.
This is the answer from RSI. They already knew this problem. Has already
been fixed for the future 6.1 version.
The advice is to "Remove the superfluous parens from your left hand side and
all will be well. IDL 6.1 will contain the fix (which consists of throwing
the proper error instead of just blindly doing the wrong thing)."
"David Fanning" <david@dfanning.com> wrote in message
news:MPG.1ab26d23f7fed9749896ec@news.frii.com...
> David Fanning writes:
>
>> I'll write this one down. It's worth remembering.
>
> Oh, I *had* this one written down already. (Probably why I
> vaguely remembered it.) It used to issue a different
> error message. It used to say "Temporary Variables Still
> Checked Out". Now it says, "Internal error: The Interpreter
> stack is not empty on exit."
>
> http://www.dfanning.com/code_tips/tempvar.html
>
> This message is *so* much better! :-)
>
> Cheers,
>
> David
>
> --
> David Fanning, Ph.D.
> Fanning Software Consulting
> Coyote's Guide to IDL Programming: http://www.dfanning.com/
|
|
|