VMS Help BASIC *Conan The Librarian (sorry for the slow response - running on an old VAX) |
Invokes the VAX BASIC for OpenVMS VAX compiler. Format: BASIC [/command-qualifier]... [source-file [/file-qualifier]... ]... If you supply one or more file specifications, the compiler compiles the source file(s). If you do not supply a file specification, you enter the VAX BASIC environment and receive the Ready prompt. If you separate source file specifications with commas, the compiler compiles each module separately and produces multiple object files. If you separate source file specifications with plus signs (+), the compiler appends the files and produces a single object file.
1 - Release notes |
The release notes for the current version of VAX BASIC are in the file BASIC039.RELEASE_NOTES which resides in SYS$HELP. The release notes are also available from within the BASIC environment through the HELP command. To access them, enter the BASIC environment and type: HELP RELEASE_NOTES You can also access the BASIC help file from the DCL command level with the following command: $ HELP/LIBRARY=BASICHELP RELEASE_NOTES
2 - /ANALYSIS_DATA
The /ANALYSIS_DATA qualifier controls the creation of a file containing data analysis information for use by the DECset Source Code Analyzer for OpenVMS systems (SCA). The format of the /ANALYSIS_DATA qualifier is as follows: /[NO]ANALYSIS_DATA[=file-spec] The file created by the /ANALYSIS_DATA qualifier has a default file type of .ANA. SCA uses the .ANA file to display cross-reference information and analyze source code. The default is /NOANALYSIS_DATA.
3 - /ANSI_STANDARD
The /ANSI_STANDARD qualifier causes VAX BASIC to allow only statements valid for ANSI Minimal BASIC and to compile programs according to the ANSI Minimal BASIC rules. The format of the /ANSI_STANDARD qualifier is as follows: /[NO]ANSI_STANDARD The default is /NOANSI_STANDARD.
4 - /AUDIT
The /AUDIT qualifier causes the compiler to include a history entry in CDD/Repository when extracting a CDD/Repository definition. The format of the /AUDIT qualifier is as follows: /[NO]AUDIT[={str-lit }] {file-spec} where: str-lit Is a quoted string. file-spec Is a file specification. If you specify a quoted string, the compiler includes it as part of the history entry. If you specify a file specification, the compiler includes up to the first 64 lines of the specified file. When you specify /AUDIT, the compiler also includes the following information about a CDD/Repository record extraction in the history entry: o The name of the program module making the extraction o The time and date of the extraction o A note that access was made by way of a VAX BASIC program o A note that the access was an extraction o The username and UIC of the process accessing CDD/Repository The default is /NOAUDIT.
5 - /CHECK
The /CHECK qualifier causes the compiler to generate code to test for arithmetic overflow and for array references outside array boundaries when the program executes. The format of the /CHECK qualifier is as follows: /[NO]CHECK[=({[NO]BOUNDS },...)] {[NO]OVERFLOW[=([NO]INTEGER,[NO]DECIMAL)]} {ALL } {NONE } where: BOUNDS Checks array subscripts to ensure that they are within array boundaries specified by the program. OVERFLOW Enables the detection of arithmetic overflow for integer and packed decimal operations. The /CHECK qualifier specifies that both OVERFLOW and BOUNDS checking are performed. The /NOCHECK qualifier specifies that no checking is performed. If you specify /CHECK=OVERFLOW, overflow checking is enabled for both integers and packed decimal numbers. Similarly, specifying /CHECK=NOOVERFLOW disables overflow checking for both types of numbers. Specifying /CHECK=NOBOUNDS means that your program is smaller and runs faster. However, no error is signaled for an array reference outside the bounds of an array. This means that the program may get a memory management or access violation error at run time. Therefore, this option should be used only for programs that have been thoroughly debugged and whose execution time is critical. The default is /NOCHECK.
6 - /CROSS_REFERENCE
The /CROSS_REFERENCE qualifier causes the compiler to generate a cross-reference listing. The format of the /CROSS_REFERENCE qualifier is as follows: /[NO]CROSS_REFERENCE[=[NO]KEYWORDS] The cross-reference listing shows program symbols, their class, and the program lines in which they are referenced. The /CROSS_REFERENCE=KEYWORDS qualifier specifies that the cross-reference listing includes all references to VAX BASIC keywords. /CROSS_REFERENCE is the same as /CROSS_REFERENCE = NOKEYWORDS. The /NOCROSS_REFERENCE qualifier suppresses the creation of a cross-reference listing. See the Compaq BASIC for OpenVMS Alpha and VAX Systems User Manual for more information on cross reference listings. The default is /NOCROSS_REFERENCE.
7 - /DEBUG
The /DEBUG qualifier causes the compiler to provide information for the OpenVMS Debugger and the system run-time error traceback mechanism. Neither TRACEBACK nor SYMBOLS affects a program's executable code. The format of the /DEBUG qualifier is as follows: /[NO]DEBUG[=({[NO]SYMBOLS },...)] {[NO]TRACEBACK} {ALL } {NONE } where: SYMBOLS Causes the compiler to provide the debugger with local symbol definitions for user-defined variables (including dimension information for arrays). TRACEBACK Causes the compiler to provide an address correlation table so the debugger and the run-time error traceback mechanism can translate absolute addresses into source program routine names and line numbers. The /NODEBUG qualifier causes the compiler to suppress information for the OpenVMS Debugger and the system run-time error traceback mechanism. For more information on debugging, see the Compaq BASIC for OpenVMS Alpha and VAX Systems User Manual. The default is /DEBUG = (TRACEBACK, NOSYMBOLS).
8 - /DECIMAL_SIZE
The /DECIMAL_SIZE qualifier lets you specify the default size for packed decimal data. You specify the total number of digits in the number and the number of digits to the right of the decimal point. The format of the /DECIMAL_SIZE qualifier is as follows: /DECIMAL_SIZE=(d,s) where: d Is the total number of digits in the number. s Is the number of digits to the right of the decimal point. The default decimal size applies to all decimal variables for which the total number of digits and digits to the right of the decimal point are not explicitly declared. See the Compaq BASIC for OpenVMS Alpha and VAX Systems Reference Manual for more information about packed decimal numbers. The default is /DECIMAL_SIZE = (15, 2).
9 - /DEPENDENCY_DATA
If you have CDD/Repository V4.0 installed on your system and if your current CDD$DEFAULT is a CDO-format dictionary, you can use the /DEPENDENCY_DATA qualifier to generate a compiled module entity in the CDD$DEFAULT for each compilation unit. The format of the /DEPENDENCY_DATA qualifier is as follows: /[NO]DEPENDENCY_DATA You must specify this qualifier if you want %INCLUDE %FROM %CDD and %REPORT %DEPENDENCY directives to establish dependency relationships. If /NODEPENDENCY_DATA is specified, the compiler does not generate a compiled module entity. The default is /NODEPENDENCY_DATA.
10 - /DESIGN
The /DESIGN qualifier enables Program Design Facility (PDF) processing. The format of the /DESIGN qualifier is as follows: /DESIGN[=({COMMENTS },...)] {PLACEHOLDERS} In order to use all of the capabilities of PDF, you must have the Compaq Language-Sensitive Editor Version 3.0 or later / Source Code Analyzer Version 2.0 or later for OpenVMS VAX Systems installed on your system. If you specify the /ANALYSIS_DATA qualifier, the compiler includes information on comments and placeholders in the analysis data file. To enable comment processing, specify /DESIGN=COMMENTS; to enable placeholder processing in place of BASIC syntax, specify /DESIGN=PLACEHOLDERS. /DESIGN is the same as /DESIGN=(COMMENTS, PLACEHOLDERS). The default is /NODESIGN.
11 - /DIAGNOSTICS
The /DIAGNOSTICS qualifier controls the creation of a diagnostics file containing compiler messages and diagnostic information for use by the Compaq Language-Sensitive Editor (LSE). The format of the /DIAGNOSTICS qualifier is as follows: /[NO]DIAGNOSTICS[=file-spec] LSE uses the diagnostics file to display diagnostic error messages and to position the cursor on the line and column where a source error exists. If you do not supply a file specification with the /DIAGNOSTICS qualifier, the diagnostics file has the same name as its corresponding source file and a default file type of .DIA. All other file specification attributes depend on the placement of the qualifier in the command. The default is /NODIAGNOSTICS.
12 - /DOUBLE
The /DOUBLE qualifier specifies that floating-point variables are double precision. This qualifier is present for compatibility with previous versions of VAX BASIC. You should use the /REAL_SIZE qualifier to specify the precision of floating-point variables.
13 - /FLAG
The /FLAG qualifier lets you specify whether the compiler informs you about declining features, compatibility with PDP-11 BASIC-PLUS-2, and compatibility with Compaq BASIC for OpenVMS Alpha. The format of the /FLAG qualifier is as follows: /[NO]FLAG[=({[NO]BP2COMPATIBILITY},...)] {[NO]DECLINING } {[NO]AXPCOMPATIBILITY} {ALL } {NONE } The /NOFLAG qualifier suppresses any warning messages about declining features, compatibility with PDP-11 BASIC-PLUS-2, and compatibility with Compaq BASIC for OpenVMS Alpha. /FLAG = ALL is the same as /FLAG = (BP2COMPATIBILITY, DECLINING, AXPCOMPATIBILITY). /FLAG = NONE is the same as /NOFLAG, and /FLAG is the same as /FLAG = ALL. The default is /NOFLAG.
14 - /INTEGER_SIZE
The /INTEGER_SIZE qualifier lets you specify the default size for integer data. The format of the /INTEGER_SIZE qualifier is as follows: /INTEGER_SIZE={BYTE} {WORD} {LONG} The default integer size applies to all integer variables whose data type is not explicitly declared. See the Compaq BASIC for OpenVMS Alpha and VAX Systems User Manual for more information about integer data types. The default is /INTEGER_SIZE = LONG.
15 - /LINES
The /LINES qualifier makes line number information available for the ERL function, and the BASIC error reporter. The format of the /LINES qualifier is as follows: /[NO]LINES If your program contains a RESUME statement with no target or a reference to the error-handling function ERL, VAX BASIC overrides the /NOLINES qualifier and signals "ERL overrides NOLINE" or "RESUME overrides NOLINE". Note that the BASIC error reporting facility is separate from that of system traceback. The /NOLINES qualifier causes line number information to be unavailable for the ERL function, the RESUME statement (with no target) and the BASIC error reporter. If you specify /NOLINES, your program runs faster and the program size is reduced (this eliminates five bytes of code and four bytes of data for each program line number). However, if you specify /NOLINES, the following restrictions occur: o You cannot use RESUME without a line number. o You cannot use the ERL function. o No BASIC line number is given in run-time error messages. This option should be used only for programs that have been thoroughly debugged and whose execution time is critical. The default is /LINES.
16 - /LISTING
The /LISTING qualifier causes the compiler to create a source listing file. The format of the /LISTING qualifier is as follows: /[NO]LISTING[=file-spec] To create a listing file with an explicit file specification, you must use the /LISTING qualifier in the form /LISTING = file-spec. Otherwise, the listing file has the same name as its corresponding source file and a file type of .LIS. All other file specification attributes depend on the placement of the qualifier in the command. Note that the /LISTING qualifier only controls whether or not the compiler produces a listing file. The /SHOW qualifier controls which parts of the listing are produced. The default is /NOLISTING from a terminal, and /LISTING in batch mode.
17 - /LONG
The /LONG qualifier specifies that integer variables are LONG. This qualifier is present for compatibility with previous versions of VAX BASIC. You should use the /INTEGER_SIZE qualifier to specify the precision of integer variables.
18 - /MACHINE_CODE
The /MACHINE_CODE qualifier controls whether the listing file contains a list of compiler generated machine code. The format of the /MACHINE_CODE qualifier is as follows: /[NO]MACHINE_CODE The /NOMACHINE_CODE qualifier suppresses compiler generated machine code in the listing file. The default is /NOMACHINE_CODE.
19 - /OBJECT
The /OBJECT qualifier causes the compiler to produce an object module, and optionally specifies its file name. The format of the /OBJECT qualifier is as follows: /[NO]OBJECT[=file-spec] By default, the compiler generates object files as follows: o If you specify one source file, the compiler generates one object file. o If you specify multiple source files separated by plus signs, the compiler appends the files and generates one object file. o If you specify multiple source files separated by commas, the compiler compiles and generates a separate object file for each source file. o You can use both plus signs and commas in the same command line to produce different combinations of appended and separated object files. To produce an object file with an explicit file specification, you must use the /OBJECT qualifier, in the form /OBJECT=file-spec. Otherwise, the object file has the same name as its corresponding source file, and a file type of .OBJ. All other file specification attributes depend on the placement of the qualifier in the command. The /NOOBJECT qualifier suppresses the creation of an object file. During the early stages of program development, you may find it helpful to suppress the production of object files until your source program compiles without errors. The default is /OBJECT.
20 - /OLD_VERSION
The /OLD_VERSION qualifier is provided for compatibility with previous versions of VAX BASIC. The format of the /OLD_VERSION qualifier is as follows: /[NO]OLD_VERSION[=CDD_ARRAYS] When you use the /OLD_VERSION qualifier, the compiler changes the lower bound to zero and adjusts the upper bound of the array. For example, Array 2:5 in CDD/Repository is translated by the compiler to be an array with a lower bound of 0 and an upper bound of 3. The compiler issues an informational message to confirm the array bounds. The /NOOLD_VERSION qualifier causes the compiler to extract an array from CDD/Repository with the bounds as specified in the data definition. For example, Array 2:5 in CDD/Repository is translated by the compiler to be an array with a lower bound of 2 and an upper bound of 5. CDD/Repository assumes a default lower bound of 1, if none is specified. Therefore, if no lower bound is specified, the compiler translates the CDD/Repository array to have a lower bound of 1. For example, Array 5 in CDD/Repository is translated by the compiler to be an array with a lower bound of 1 and an upper bound of 5. The default is /NOOLD_VERSION.
21 - /OPTIMIZE
The /OPTIMIZE qualifier controls whether the compiler optimizes the program to generate more efficient code for optimum run-time performance. The format of the /OPTIMIZE qualifier is as follows: /[NO]OPTIMIZE The default is /OPTIMIZE.
22 - /REAL_SIZE
The REAL_SIZE qualifier lets you specify the default size for floating-point data. The format of the REAL_SIZE qualifier is as follows: /REAL_SIZE={SINGLE} {DOUBLE} {GFLOAT} {HFLOAT} The default floating-point size applies to all floating-point variables whose size is not explicitly declared. See the Compaq BASIC for OpenVMS Alpha and VAX Systems User Manual for more information on floating-point data types. The default is /REAL_SIZE = SINGLE.
23 - /ROUND_DECIMAL
The /ROUND_DECIMAL qualifier causes the compiler to round packed decimal numbers rather than truncate them. The format of the /ROUND_DECIMAL qualifier is as follows: /[NO]ROUND_DECIMAL The /NOROUND_DECIMAL qualifier causes the compiler to truncate packed decimal numbers rather than round them. The default is /NOROUND_DECIMAL.
24 - /SCALE
The /SCALE qualifier specifies a scale factor between zero and six, inclusive. The scale factor affects only double-precision numbers. The format of the /SCALE qualifier is as follows: /SCALE=n The /SCALE qualifier helps to control accumulated round-off errors by multiplying floating-point values by 10 raised to the scale factor power before storing them in variables. The /SCALE qualifier is ignored for all but double-precision floating-point numbers. NOTE The /SCALE qualifier is provided for compatibility with existing programs and with other implementations of VAX BASIC. Compaq recommends that you do not use this feature for new program development. Accumulated round-off errors can be better controlled with packed decimal numbers. See the Compaq BASIC for OpenVMS Alpha and VAX Systems Reference Manual for more information on packed decimal numbers. The default is /SCALE = 0.
25 - /SHOW
The /SHOW qualifier determines which parts of the compilation listing are created. The /LISTING qualifier must have been specified for the /SHOW qualifier to have any effect. The format of the /SHOW qualifier is as follows: /[NO]SHOW[=({[NO]CDD_DEFINITIONS},...)] {[NO]ENVIRONMENT } {[NO]INCLUDE } {[NO]MAP } {[NO]OVERRIDE } {ALL } {NONE } where: CDD_DEFINITIONS controls whether the translation of a CDD/Repository record is displayed in the listing. ENVIRONMENT lets you display all defaults that were in effect when the program was compiled. INCLUDE controls whether files accessed with the %INCLUDE directive are displayed in the listing. MAP determines whether the listing contains an allocation map. The allocation map lists all program variables, their size and their data type. OVERRIDE helps you debug code by disabling the effect of the %NOLIST directive. The /NOSHOW qualifier causes the compiler to display only the source listing. /SHOW = ALL is the same as /SHOW = (CDD_DEFINITIONS, ENVIRONMENT, INCLUDE, MAP, OVERRIDE). /SHOW = NONE is the same as /NOSHOW. /SHOW is the same as /SHOW = ALL. The default is /SHOW = (CDD_DEFINITIONS, ENVIRONMENT, INCLUDE, MAP, NOOVERRIDE).
26 - /SINGLE
The /SINGLE qualifier specifies that floating-point variables are single precision. This qualifier is present for compatibility with previous versions of VAX BASIC. You should use the /REAL_SIZE qualifier to specify the precision of floating-point variables.
27 - /SYNTAX_CHECK
The /SYNTAX_CHECK qualifier causes VAX BASIC to perform line-by-line syntax checking. The format of the /SYNTAX_CHECK qualifier is as follows: /[NO]SYNTAX_CHECK When syntax checking is enabled, VAX BASIC immediately checks the syntax of every text line as soon as you type a carriage return. When syntax checking is disabled, VAX BASIC does not perform syntax checking until you COMPILE or RUN the program. The /NOSYNTAX_CHECK qualifier causes VAX BASIC to suppress line-by-line syntax checking. The default is /NOSYNTAX_CHECK.
28 - /TRANSLATE
The /TRANSLATE qualifier causes the Compaq BASIC Translator to be invoked if it has been installed (See DB2VB).
29 - /TYPE_DEFAULT
The /TYPE_DEFAULT qualifier lets you specify the default data type for numeric variables. The format of the /TYPE_DEFAULT qualifier is as follows: /TYPE_DEFAULT={INTEGER } {REAL } {DECIMAL } {EXPLICIT} Specifying EXPLICIT means that all program variables must be explicitly declared in DECLARE, EXTERNAL, COMMON, MAP or DIM statements. Specifying INTEGER, REAL, or DECIMAL means that variables and data which are not explicitly declared default to integer, real or packed decimal. To specify the actual size of variables and data, use the INTEGER_SIZE, REAL_SIZE and DECIMAL_SIZE qualifiers. The default is /TYPE_DEFAULT = REAL.
30 - /VARIANT
The /VARIANT qualifier lets you specify the value associated with the lexical variable %VARIANT. The format of the /VARIANT qualifier is as follows: /VARIANT[=int-const] See the Compaq BASIC for OpenVMS Alpha and VAX Systems User Manual or Compaq BASIC for OpenVMS Alpha and VAX Systems Reference Manual for more information about the /VARIANT qualifier and the %VARIANT lexical variable. If the /VARIANT qualifier is not specified, the value of %VARIANT is 0. If the /VARIANT qualifier is specified without a value, the value of %VARIANT is 1. The default is /VARIANT = 0.
31 - /WARNINGS
The /WARNINGS qualifier lets you specify whether the compiler displays informational or warning messages. The format of the /WARNINGS qualifier is as follows: /[NO]WARNINGS[=({[NO]WARNINGS },...)] {[NO]INFORMATIONALS} {ALL } {NONE } Specifying /WARNINGS=NOWARNINGS causes the compiler to suppress warning messages. Specifying /WARNINGS=NOINFORMATIONALS causes the compiler to suppress informational messages. The /NOWARNINGS qualifier causes the compiler to suppress any informational or warning messages. /WARNINGS = ALL is the same as /WARNINGS = (INFORMATIONAL, WARNINGS). /WARNINGS = NONE is the same as /NOWARNINGS. The default is /WARNINGS = (INFORMATIONAL, WARNINGS).
32 - /WORD
The /WORD qualifier specifies that integer variables are word length. This qualifier is present for compatibility with previous versions of VAX BASIC. You should use the /INTEGER_SIZE qualifier to specify the precision of integer variables.
|