FIX: Unbalanced Parentheses in IF Condition Not Seen by Parser

Last reviewed: October 29, 1997
Article ID: Q135384
3.00 3.00b 2.60a | 2.60a
WINDOWS          | MS-DOS
kbprg kbbuglist kbfixlist

The information in this article applies to:

  • Microsoft Visual FoxPro for Windows, versions 3.0, 3.0b
  • Microsoft FoxPro for Windows, version 2.6a
  • Microsoft FoxPro for MS-DOS, version 2.6a

SYMPTOMS

You receive incorrect results from an IF...ENDIF when you have unbalanced parentheses in the logical expression or if the later part of the expression has a syntactical error and the beginning of the expression can be logically evaluated.

CAUSE

This is a compatibility issue. Anything that cannot be logically parsed in the expression is treated as a comment on the same line if at least some of the first part of the expression can be evaluated to a logical value.

STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. This problem has been fixed in Visual FoxPro 5.0 for Windows.

MORE INFORMATION

Code to Reproduce Problem

IF (.F.)) OR (.T.)

   ?"true"
ELSE
   ?"false"
ENDIF


KBCategory: kbprg kbbuglist kbfixlist
KBSubcategory: FxprgGeneral VFoxWin buglist3.00 buglist3.00b fixlist5.00
Additional reference words: 3.00 3.00b
Keywords : buglist3.00 buglist3.00b fixlist5.00 FxprgGeneral vfoxwin kbbuglist kbfixlist kbprg
Version : 3.00 3.00b 2.60a | 2.60a
Platform : MS-DOS WINDOWS
Solution Type : kbfix


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: October 29, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.