Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

MODIFY-RUNTIME-PROPERTIES

&pagelevel(5)&pagelevel

Alias-Name:    SET-RUNTIME-PROPERTIES

Mit dieser Anweisung kann bei der Übersetzung des Moduls, das die main-Funktion enthält, das Laufzeitverhalten des Programms beeinflusst werden. Bei der Übersetzung anderer Module haben diese Einstellungen keinen Effekt.

MODIFY-RUNTIME-PROPERTIES

PARAMETER-PROMPTING= *UNCHANGED / *YES / *NO

,STACK-SIZE= 64 / *UNCHANGED / <integer 8..99999>

,STATISTIC-MESSAGES= *UNCHANGED / *CPU-TIME / *NONE

,PROGRAM-INTERRUPT= *UNCHANGED / *INTEGER-OVERFLOW / *NONE

,ENVIRONMENT-ENCODING = *UNCHANGED / *STD / *EBCDIC

PARAMETER-PROMPTING = *UNCHANGED / *YES / *NO
*YES: Das ablauffähige Programm soll die UNIX-Umgebung simulieren, d.h.

  • das Programm kann mit Parametern aufgerufen werden, wenn es mit START-EXECUTABLE-PROGRAM aufgerufen wird, bzw.

  • nach Programmstart soll eine Parameterzeile erscheinen, in der Parameter für die main-Funktion oder Umweisungen von stdin, stdout oder stderr angegeben werden können (siehe auch Abschnitt „Parametereingaben nach dem Programmstart“).

*NO: Das ablauffähige Programm startet ohne Anforderung der Parameterzeile.

Bei Start des Programms aus der POSIX-Shell sind die Angaben in PARAMETER-PROMPTING-Option bedeutungslos, da in diesem Fall die Parametereingaben generell in der Kommandozeile erfolgen.

STACK-SIZE = 64 / *UNCHANGED / <integer 8..99999>
Mit dieser Option kann bestimmt werden, wieviel Platz für das erste Segment des C-Laufzeitstacks reserviert werden soll.
64: Voreingestellt sind 64 Kilobyte.
<integer>: 8 bis 99999 Kilobyte Speicherplatz können reserviert werden.

STATISTIC-MESSAGES = *UNCHANGED / *CPU-TIME / *NONE
Bei Beendigung eines Programms wird standardmäßig die verbrauchte CPU-Zeit ausgegeben. Diese Meldung kann mit *NONE unterdrückt werden.

PROGRAM-INTERRUPT = *UNCHANGED / *INTEGER-OVERFLOW / *NONE

Bei der Übersetzung von Programmen, die die main-Funktion enthalten, kann mit diesem Operanden die Programmaske eingestellt werden.

*INTEGER-OVERFLOW entspricht der ILCS-Programmaske X’0C’.

Die Auswahl der generierten Befehle wird durch die Option nicht beeinflusst. Daher bedeutet das Zulassen von INTEGER-OVERFLOW nicht, dass in jedem Fall ein Überlauf ausgelöst wird.

*NONE entspricht der Programmaske X’00’.

Die beiden Programmmasken haben folgende Wirkung:


INTEGER-OVERFLOW

NONE

Festpunkt-Überlauf

zugelassen

unterdrückt

Dezimal-Überlauf

zugelassen

unterdrückt

Exponenten-Unterlauf

unterdrückt

unterdrückt

Mantisse Null

unterdrückt

unterdrückt

Bei Sprachmix darf die ILCS-Programmmaske nicht verändert werden!

ENVIRONMENT-ENCODING = *UNCHANGED / *STD / *EBCDIC
Mit diesen Optionen kann gesteuert werden, wie externe Zeichenketten (Argumente von main und Umgebungsvariablen) behandelt werden.
*STD ist der Standardwert. Er bewirkt, dass die externen Zeichenketten so kodiert werden, wie es bei der Option MODIFY-SOURCE-PROPERTIES LITERAL-ENCODING angegeben wurde.
Die Option *EBCDIC wird aus Kompatibilitätsgründen angeboten und bewirkt, dass trotz der Angabe von MODIFY-SOURCE-PROPERTIES=*ASCII bzw. *ASCII-FULL externe Zeichenketten in EBCDIC kodiert werden.