Summary of Pascal 4.00 Compiler Metacommands PSS ID Number: Q70626 Article last modified on 03-28-1991 PSS database name: S_PasCal
4.00 | 4.00
MS-DOS | OS/2
Summary:
The following list summarizes the metacommands for the Microsoft Pascal Compiler version 4.00 for MS-DOS and MS OS/2. For more information about the metacommands, see chapter 18, “Microsoft Pascal Metacommands,” in the “Microsoft Pascal Reference Manual” for Pascal version 4.00.
More Information:
Metacommands make up the compiler control language. Metacommands are compiler directives that allow you to control debugging and error handling, optimization level, language level, source file usage during compilation, listing-file format, etc.
You can specify metacommands at the start of a comment by using multiple metacommands separated by spaces or commas. To disable a metacommand, place any character that is not a tab or space in front of the first dollar sign. For example, {<math display="inline">pagesize:80} will change the page length of the source listing to 80 bytes and {x</math>pagesize:80} will turn off the metacommand.
LANGUAGE AND OPTIMIZATION LEVEL
Metacommand Action ———– ——
$decmath Directs the compiler to use the decimal math routines in the auxiliary decimal-math run-time library.
$extend Adds extend-level features.
$floatcalls Directs the compiler to make calls to the real number math routines; set to $floatcalls+ by default.
$real:n Sets the length of the REAL type.
$rom Gives a warning on static initialization.
$simple Disables global optimizations.
$size Minimizes size of code generated.
$speed Minimizes execution time of code.
$standard Enables standard level only.
$system Adds extend- and system-level features.
DEBUGGING AND ERROR HANDLING
Metacommand Action ———– ——
$brave+ Sends error messages and warnings to the terminal screen.
$debug- Turns on or off all the debug checking; off by default.
$entry- Generates procedure entry/exit calls for debugger.
$errors:n Sets number of errors allowed per page (default is 25).
$goto- Flags GOTO statements as “considered harmful.”
$indexck Checks for array index values in range, including super array indexes; off by default.
$initck Checks for use of uninitialized values; off by default.
$line- Generates line-number calls for the debugger.
$mathck- Checks for mathematical errors such as overflow and division by zero; off by default.
$nilck- Checks for bad pointer values; off by default.
$rangeck- Checks for subrange validity; off by default.
$runtime- Determines context of run-time errors.
$stackck- Checks for stack overflow at procedure or function entry; off by default.
$tagck- Checks tag fields in variant records; off by default.
$warn+ Gives warning messages in listing file.
SOURCE FILE CONTROL
Metacommand Action ———– ——
$if constant Allows conditional compilation of text1 source if $then text1 constant is greater than zero. $else text2 $end
$include:‘file’ Switches compilation from current source file to source file named.
$inconst:text Allows interactive setting of constant values at compile time.
$message:‘test’ Allows the display of a message to the terminal screen to indicate which version of a program is compiling.
$pop Restores saved value of all metacommands.
$push Saves current value of all metacommands.
LISTING FILE CONTROL
Metacommand Action ———– ——
$linesize:n Sets width of listing. Default is 79 or 131, depending on implementation.
$list+ Turns on or off source listing. Errors are always listed.
$ocode+ Turns on disassembled object-code listing.
$page+ Skips to next page. Line number is not reset.
$page:n Sets page number for next page (does not skip to next page).
$pageif:n Skips to next page if less than n lines left on current page.
$pagesize:n Sets length of listing in lines. Default is 55.
$skip:n Skips n lines or to end of page.
$subtitle:‘text’ Sets page subtitle.
$symtab+ Sends symbol table to listing file.
$title:‘text’ Sets page title.
Copyright Microsoft Corporation 1991.