Bug Report 2001/10/19-v1.0b26-br03

[forum ]
[Win98 Setup Bug]
Bug Report id=2001/10/19-v1.0b26-br03
Affected versions:v1.0b26

Bug Description

The function OCT converts its argument to LONG if this is a variable. For example the following program:
varReal = 60.5e0
print Oct(varReal), " ",varReal, "\n"

prints the following
101 60

Bug Reason, What Causes the Bug

The implementation of the function OCT uses the macro _EVALUATEEXPRESSION instead of EVALUATEEXPRESSION The macro starting with the _ character evaluates the function argument resulting the argument without creating a copy of it. This optimizes code in case the command or function does not alter the argument/parameter value. This is not the case in the implementation of the function OCT. OCT converts the argument value to LONG.


The following line in the COMMAND(OCT) should be updated:


Bug Workaround Until Solution is Available

Do not pass a variable to the function OCT, use the ByVal operator to protect the argument.


Mitchell Greess [m.greess@solutions-atlantic.com] has discovered the same bug in the function HEX.

This page was generated January 28, 2010 9:58:43