Difference between revisions of "Error Messages/41051"
(Var..Do to Local..Do) |
|||
(One intermediate revision by the same user not shown) | |||
Line 5: | Line 5: | ||
<pre style="background:white; border:white; margin-left: 1em; font-style:italic"> | <pre style="background:white; border:white; margin-left: 1em; font-style:italic"> | ||
In the call to function Handle, the first parameter, «X», does not identify a valid object. | In the call to function Handle, the first parameter, «X», does not identify a valid object. | ||
− | In this case, you are attempting to take the handle of a temporary local | + | In this case, you are attempting to take the handle of a temporary local value. |
</pre> | </pre> | ||
Line 12: | Line 12: | ||
This error occurs when you do something like: | This error occurs when you do something like: | ||
− | :<code> | + | :<code>[[Local]] x := 1..5 do [[Handle]](x)</code> |
− | The [[ | + | The [[Local..Do]] construct declares a local value, but a [[Local Value|local value]] is not an actual Analytica object the way a global Variable or even a [[LocalIndex..Do|local index]] is. Since it isn't an object, you cannot have a handle to it. |
− | This particular error is new to release [[Analytica 4.2]]. The situation in which it arises, where the local | + | This particular error is new to release [[Analytica 4.2]]. The situation in which it arises, where the local value is defined to hold an unindexed list, would have permitted the handle to be taken in release 4.1, but the [[handle]] obtained was to an internal temporary object that had no identifier and displayed as a lone dot. This undesirable situation is now flagged in Analytica 4.2. |
== Remedies == | == Remedies == | ||
− | If you feel you really do want to take the [[handle]] of «x», perhaps because you want a [[handle]] to an index object, then you probably intended to declare your local | + | If you feel you really do want to take the [[handle]] of «x», perhaps because you want a [[handle]] to an index object, then you probably intended to declare your local identifier using the [[Index..Do]] construct, rather than using the [[Var..Do]] construct. |
==See Also== | ==See Also== | ||
* [[Handle]] | * [[Handle]] | ||
− | * [[Local | + | * [[Local Values]] |
* [[Objects and Values]] | * [[Objects and Values]] | ||
* [[Var..Do]] | * [[Var..Do]] | ||
* [[Index..Do]] | * [[Index..Do]] | ||
* [[Arrays and Indexes]] | * [[Arrays and Indexes]] |
Latest revision as of 23:52, 8 October 2021
Error message text
In the call to function Handle, the first parameter, «X», does not identify a valid object. In this case, you are attempting to take the handle of a temporary local value.
Cause
This error occurs when you do something like:
The Local..Do construct declares a local value, but a local value is not an actual Analytica object the way a global Variable or even a local index is. Since it isn't an object, you cannot have a handle to it.
This particular error is new to release Analytica 4.2. The situation in which it arises, where the local value is defined to hold an unindexed list, would have permitted the handle to be taken in release 4.1, but the handle obtained was to an internal temporary object that had no identifier and displayed as a lone dot. This undesirable situation is now flagged in Analytica 4.2.
Remedies
If you feel you really do want to take the handle of «x», perhaps because you want a handle to an index object, then you probably intended to declare your local identifier using the Index..Do construct, rather than using the Var..Do construct.
Enable comment auto-refresher