BUG: Bad Values Returned in Compiled Decimal QuickBasic (49891)






This article was previously published under Q49891

SYMPTOMS

The following program demonstrates a case where incorrect results are generated from an application compiled in Microsoft QuickBasic (d) Version 1.00 (decimal math version) for the Macintosh . The program works correctly in the interpreter but fails as a compiled application.

Microsoft has confirmed this to be a bug in Version 1.00 (d). We are researching this problem and will post new information here as it becomes available.

MORE INFORMATION

The following program demonstrates the problem in a compiled application:
X# =  .06666666653334#
y# = -.066666666400014#
z# = 3.3333333327#

AA# = X# + Y# ' The result here is 1000 times too large. If the
PRINT AA#     ' correct or incorrect result is put into AA#
              ' directly, then the next error is avoided.
              ' The incorrect result is :
              '    AA# = .000000133326#
              ' The correct result is   :
              '    AA# = .000000000133326#

AB# = Z#/AA#  ' This generates an ERROR #6 (OVERFLOW) when
              ' compiled unless AA# is assigned a literal
PRINT AB#     ' result from AA# = X# + Y#
              ' ( AA# = .000000000133326# )

WHILE INKEY$ = ""
WEND
				

Modification Type: Minor Last Reviewed: 1/9/2003
Keywords: kbbug KB49891