KnowledgeBase Archive

An Archive of Early Microsoft KnowledgeBase Articles

View on GitHub

Q31882: DATA Statements Not Allowed in SUB or FUNCTION Procedures

Article: Q31882
Product(s): See article
Version(s): 4.00 4.00b 4.50
Operating System(s): MS-DOS
Keyword(s): ENDUSER | docerr B_BasicCom | mspl13_basic
Last Modified: 21-DEC-1989

The DATA statement should be included in the list of statements
prohibited in procedure-level code on Page 50 of the following
manuals

1. "Microsoft QuickBASIC 4.0: Programming in BASIC: Selected Topics"

2. "Microsoft BASIC Compiler 6.0: Programming in BASIC: Selected
    Topics"

3.  Page 41 of the "Microsoft BASIC 7.0: Programmer's Guide"
    manual.

The DATA statement documentation on Page 135 in the BASIC language
reference manual correctly states that "DATA statements can only be
entered in the module-level code."

A module is defined as an individual source file, but "module level"
is a special term with a different meaning. The glossary on Page 350
of the "Microsoft QuickBASIC 4.0: Learning and Using QuickBASIC"
manual defines "module-level code" as follows:

   (Module-level code is defined as) program statements within any
   module that are outside a SUB or FUNCTION definition. Error- or
   event-handling code and declarative statements such as COMMON,
   DECLARE, and TYPE can appear only at the module level.

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.

Copyright Microsoft Corporation 1986-2002.