Compiler in Release 6.10
1 Error Handling Using the SYNTAX-CHECK Statement
2 Static Checks in Offset/Length Declarations
3 Data Types for Source Texts with SCAN ABAP-SOURCE
4 Implementation in TOP Includes
5 Faster Generation of Program Segments
6 Generating Data und Types in System-Includes
7 Converting Character Literals with a Negative Maximum Value
8 Changing Write Protected Database Views
9 Typing the Source Texte with GENERATE SUBROUTINE POOL
ABAP_MODIFICATION_1 Error Handling Using the
SYNTAX-CHECK
Statement
The SYNTAX-CHECK statement was
enhanced such that the syntax check also continues after error messages
occur, provided the parameter ID = ERR is set. Any error
messages are written to a table, which can be declared using the
TABLE addition. The error collection additionally provides the return
value SY-SUBRC = 4.
ABAP_MODIFICATION_2 Static Checks in Offset/Length Declarations
Previously, when you used offset/length declarations - that is,
field+offset(length) -, the system did not check until runtime,
whether offset and length values were convertible numbers of the types
I, F, or P. This is now already checked during the syntax check.
ABAP_MODIFICATION_3 Data Types for Source Texts with SCAN
ABAP-SOURCE
The SCAN ABAP-SOURCE statement has been
enhanced such that, you can now also use fields of type C or
STRING for the source code that you want to scan, instead of an
internal table. You no longer have to process an internal table.
ABAP_MODIFICATION_4 Implementation in TOP Includes
If you use a FORM , FUNCTION, or CLASS ...
IMPLEMENTATION statement, then this will now cause a syntax warning.
However, you can still activate the program.
ABAP_MODIFICATION_5 Faster Generation of Program Segments
Program segments can be generated much more quickly, now that
pre-compiled headers have been introduced. Pre-compiled headers allow
the system to import and reuse previously processed data declarations of
global classes, interfaces, and type groups more quickly, both during
the syntax check and when generating the program. Therefore it is no
longer necessary to import program segments repeatedly. If the compiler
does not find a pre-compiled header for the required program segment,
then it generates one and stores it in the program buffer (
PXA ).
You can also use the WITH PRECOMPILED HEADERS addition with the
GENERATE REPORT statement to speed up
generation from within an ABAP program.
ABAP_MODIFICATION_6 Generating Data and Types in System Includes
Data and types in includes of the form <(><<)>...> were previously
seen as system objects and packed into a separate name space; however,
this was ignored whne the program was generated. For this reason, such
objects could be obscured by global program definitions, so that it was
unclear at runtime which definition was used. Now both generation and
runtime treat system objects in the same way. Therefore in future, the
following example will always display the value 5.
<(>include .<)>
data SCREEN type I value 5.
write / SCREEN.
ABAP_MODIFICATION_7 Converting Text Literals with a Negative Maximum
Value
Previously, if you tried to assign the highest negative integer value
to a type I variable, in the form of the text literal '-2147483648', the
system raised an exception that can be handled,
CX_SY_CONVERSION_OVERFLOW . On the other hand, an assignment in the
form of a numeric literal was accepted. Now both forms are supported, as
the following example shows:
PROGRAM test_int.
DATA int TYPE i.
int = '-2147483648'.
int = -2147483648.
WRITE int.
ABAP_MODIFICATION_8 Changing Write-Protected Database Views
In the maintenance status of the dictionary it is possible to set a
database view to read only , so that ABAP programs cannot make any
changes. Previously the maintenance status was only checked at runtime.
Now a syntax error is triggered when this situation is already
statically recognized.
ABAP_MODIFICATION_9 Typing the Source Text with GENERATE
SUBROUTINE POOL
With the GENERATE SUBROUTINE POOL the
transfer of the source code is now also possible in an internal table of
row type STRING .
Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved