make sure anything entered below also gets into Compiler Edit History section of LIT….COMPIL.
Compiler edit 834: Support .ARGTYP(@arg) and .ARGSIZ(@arg). Concept is similar to that used for XPUTARG @arg—i.e. @arg is treated essentiall as a macro for the argument number corresponding to the argument arg as defined in the function/procedure definition or as retrieved in an SBX using XGETARG(S). No change to the runtime system required. | |
1554.4.1 |
Compiler edit 831: migrate the patch to relax the rules for XPUTARG @VAR from 6.5 to 6.4. See 6.5 release notes for details. |
1553.0 |
New .ARGTYP() flag ARGTYP_READONLY will be set if the passed argument is a literal value or expression, or is otherwise incapable of receiving an updated value. |
Compiler edit 830: Errors related to improperly terminated functions and procedures (such as a missing or mismatched ENDFUNCTION statement, or a prior missing ENDIF, ENDSWITCH, LOOP or NEXT statement) are now reporting in a somewhat more helpful way than before, hopefully making it easier to understand and locate the real problem. | |
1552.0.4 |
Compiler Edit 828 retrofits several valuable functions from A-Shell 6.5 back to 6.4. |
1546.9.1 |
Compiler refinement (edit 797): maximum nesting levels for ++INCLUDE and ++IF conditions increased from 20 to 40. Improve messaging/recovery for the overflow condition. |
1538.0.1 |
New dot variables .LINENO and .LOCATION. |
1534.2.1 |
Compiler edit 790: use of .ARGCNT within a PRIVATE_BEGIN / PRIVATE_END block now generates a compile error. Although the expression wouldn't technically be illegal, because the PRIVATE block is essentially called for initialization by whatever function or procedure in the module gets called first, there's really no good way to predict in advance what the .ARGCNT value will represent, and thus it is almost certain to create a discrepancy between the expected and actual behavior. |
1534.0.1 |
New DIR Switch MEMREQ displays the memory required for static variable storage. |
1532.1.4 |
COMPIL.LIT / COMPLP.LIT 1.1(133) update: /IGOO switch now recognized. This was actually implemented in the internal compiler 779 update when the INCLUDE_GLOBAL_ONCE_ONLY pragma was added. |
1530.0.2 |
Implemented two New INSTR Flags. |
1529.0.1 |
Implement major new feature WEBCACHEfor auto-loading required files from web. |
1528.0.1 |
Language enhancement (compiler edit 776) adds Indirect Function Calls. |
1528.0.2 |
Compiler enhancement (compiler edit 777) adds New PRAGMAs. |
1528.0.3 |
Compiler enhancement (compiler edit 778) adds auto-defined macros ABC_CURRENT_ROUTINE$ and ABC_CURRENT_MODULE$. These equate to the current function/procedure name (or "" if none), and the current module filename (file.ext). Both may be useful in standardized error reporting. |
1528.0.4 |
Compiler enhancement (compiler edit 779) adds pragma ++pragma INCLUDE_GLOBAL_ONCE_ONLY <boolean> . When enabled, ++include is treated as ++include'once, except when it occurs inside a function or procedure. In such cases, it is likely that you are intentionally including an extra copy of some map statements. |
1526.0.4 |
Language enhancement (compiler edit 773): New IFELSE Functions. |
1526.0.1 |
New Special File Name .NULL may be used with sequential files to open a file which is not connected to anything. |
1523.0.1 |
Language/compiler (edit 770) enhancement adds Private Attribute for Functions and Procedures. |
1522 |
Language enhancement adds bidirectional linked list MLIST. |
1521 |
Language enhancement: new collection type and Ordered Multi-Map ORDMAPM supports multiple keys of the same value. |
1520 |
Language enhancement: Passing Ordered Maps may now be accomplished by reference to functions and procedures. |
1517.0.1 |
Compiler (edit 764) enhancement to recognize the new random generator functions SRAND2 and RND2. |
1516.0.1 |
Runtime enhancement: Add support for B6 and I6 Variables. |