Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Querverweisliste

&pagelevel(4)&pagelevel

Die Querverweisliste wird mit der CROSS-REFERENCE-Option der MODIFY-LISTING-PROPERTIES-Anweisung angefordert.

Sie besteht aus folgenden Teilen:

  • Der FILETABLE-Teil enthält die Namen aller Dateien bzw. Bibliotheken/Elemente, die der Compiler als Quelle (Quellprogramm oder Include-Element) verwendet hat und ordnet diesen jeweils eine Nummer zu. Auf diese Nummern nehmen die anderen Teile der Querverweisliste Bezug.

  • Der PREPROCESSING-INFO-Teil enthält eine Liste der vom Präprozessor bearbeiteten Namen in #include- und #define-Anweisungen (Makros, Include-Elementnamen etc.)

  • Der TYPES-Teil enthält eine Liste der benutzerdefinierten Typen (typedefs, Klassen-, Struktur-, Union- und Aufzählungstypen)

  • Der VARIABLES-Teil enthält eine Liste der Variablen

  • Der FUNCTIONS-Teil enthält eine Liste der Funktionen

  • Der LABELS-Teil enthält eine Liste der Labels

  • Der TEMPLATES-Teil enthält eine Liste der Templates (nur in den Modi C++ V3, C++ 2017 und C++ 2020)

Die Namen sind in den Listen jeweils alphabetisch sortiert.

Der PREPROCESSING-INFO-, TYPES- und TEMPLATES-Teil sind in der Querverweisliste standardmäßig nicht enthalten und müssen mit PREPROCESSING-INFO=*YES, TYPES=*YES bzw. TEMPLATES=*YES explizit angefordert werden.

FILETABLE-Teil der Querverweisliste

******* XREF - LISTING ********    BS2000 C/C++ COMPILER 04.0B02    DATE:2023-04-02 PAGE: 1
         FILETABLE      SOURCENAME:*BS2000(MAINPROG)                TIME=17:37:52
___________________________________________________________________________________________
 SOURCE FILE      0 =  *BS2000(:2OSC:$TST30B.MAINPROG)
 INCLUDE FILE     1 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,STDIO.H(V04.3A10),S)
 INCLUDE FILE     2 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,IOBUF.H(V04.3A10),S)
 INCLUDE FILE     3 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,POSFILE.H(V04.3A10),S)
 INCLUDE FILE     4 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,STDIO.BS21.H(V04.3A10),S)
 INCLUDE FILE     5 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,STDIO.COMMON.H(V04.3A10),S)
 INCLUDE FILE     6 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,STDIO.BS22.H(V04.3A10),S)
 INCLUDE FILE     7 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,CGLOBALS.H(V04.3A10),S)
 INCLUDE FILE     8 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,IOBUF.H(V04.3A10),S)
 INCLUDE FILE     9 =  *LIBRARY-ELEMENT(:2OSL:$TSOS.SYSLIB.CRTE,ERRNO.H(V04.3A10),S)
 INCLUDE FILE    10 =  *LIBRARY-ELEMENT(:2OSC:$TST30B.PLAM.INCL,INCL1.H(*UPPER-LIMIT),S)
 INCLUDE FILE    11 =  *LIBRARY-ELEMENT(:2OSC:$TST30B.PLAM.INCL.INCL2.H(*UPPER-LIMIT),S)
___________________________________________________________________________________________

Dateinummer in globalen Querverweislisten

In einer Querverweisliste, die mit dem globalen Listengenerator aus mehreren CIF-Dateien erstellt wurde (siehe Abschnitt „Steuerung des globalen Listengenerators“) wird die Dateinummer in der Form n(m) angegeben. n ist die fortlaufende Nummer der pro Übersetzungseinheit (= CIF-Datei) verwendeten Quell- und Include-Dateien (analog zur lokalen Querverweisliste, s.o.), m ist die Nummer der jeweiligen Übersetzungseinheit. Die Nummerierung der Übersetzungseinheiten beginnt mit 0.

PREPROCESSING-INFO-Teil der Querverweisliste

******* XREF - LISTING ********    BS2000 C/C++ COMPILER 04.0B02    DATE:2023-04-02 PAGE: 2
         PREPRO       SOURCENAME:*BS2000(MAINPROG)                  TIME=17:37:52
___________________________________________________________________________________________
     56/12:5
 *LIBRARY-ELEMENT(:2OSC:$TST30B.PLAM.INCL,INCL1.H(*UPPER-LIMIT),S) / include file 
     2%0
 *LIBRARY-ELEMENT(:2OSC:$TST30B.PLAM.INCL,INCL2.H(*UPPER-LIMIT),S) / include file 
     3%0
___________________________________________________________________________________________
'.'applied ':'def ':^'undef '%'included

TYPES-Teil der Querverweisliste

******* XREF - LISTING ********    BS2000 C/C++ COMPILER 04.0B02    DATE:2023-04-02 PAGE: 3 
         TYPES          SOURCENAME:*BS2000(MAINPROG)                TIME=17:37:52
___________________________________________________________________________________________
a0000270              / struct of size 16 (0x10)
std                   / namespace
A                     / class of size 4 (0x4)                 ----------------- (1)
    1/7:10           1/18.11         13/3.0           14/3.0  ----------------- (2)
                        public baseclass of class 'B'
  i                     / member, signed int, private         ----------------- (3)
  A                     / inline constructor( signed int ), public
  foo                   / member, inline function( void ) ret void, public
B                     / class of size 8 (0x8)
    1/7:11
  A                     / baseclass, public
  i                     / member, signed int, private
  B                     / inline constructor( signed int ), public
  foo                   / member, inline function( void ) ret void, public
___________________________________________________________________________________________
'.'used ':'def '&'decl

Erklärung

(1)

Name und Beschreibung des benutzerdefinierten Typs, ggf. mit Angabe der Größe
(dezimal und sedezimal)

(2)

Jeweils von links nach rechts:
Quellprogrammzeile und Spalte, in der der Typ erscheint,
Abkürzungssymbol zur Verwendung des Typs,
Nummer der Quelldatei bzw. des (Include-)Elements aus der FILETABLE

14/3.0 bedeutet z.B.: In Zeile 14, Spalte 3 des Quellprogramms mainprog (0) wird eine Variable vom
Typ der Klasse A angelegt. Der Typ wird benutzt (.)

(3)

Bei strukturierten Typen werden auch die Komponenten dieser Typen (jeweils eingerückt) beschrieben.

Die Datenelemente von Strukturen, Klassen und Unions werden ausschließlich im TYPES-Teil
aufgelistet (sind keine Variablen). Die Funktionselemente erscheinen noch einmal im FUNCTIONS-Teil.

VARIABLES-Teil der Querverweisliste

******* XREF - LISTING ********    BS2000 C/C++ COMPILER 04.0B02    DATE:2023-04-02 PAGE: 4 
         VARIABLES      SOURCENAME:*BS2000(MAINPROG)                TIME=17:37:52
___________________________________________________________________________________________
a                     / class 'A'                            ------------------ (1)
    7/3=10           7/3:10          13/14&0          20/3&0 ------------------ (2)
aptr                  / automatic, pointer to class 'A',
                        local in main( void ) ret signed int, init value = &a
   13/6=0           13/6:0           21/3.0
b                     / class 'B'
    7/3=11           7/3:11          14/14&0          22/3&0
bptr                  / automatic, pointer to class 'A',
                        local in main( void ) ret signed int, init value = &b
   14/6=0           14/6:0           23/3.0
i                     / member, signed int,
                        member of class 'A'
    3/10:10          5/21=10
i                     / member, signed int,
                        member of class 'B'
    3/10:11          5/21=11
ii                    / automatic, signed int,
                        local in main( void ) ret signed int, init value = 1
   11/7=0           11/7:0           16/18.0
ii                    / extern, signed int
    5/12:%0
jj                    / extern, signed int
    4/16:%0
jj                    / automatic, signed int,
                        local in main( void ) ret signed int, init value = 2
   12/7=0           12/7:0           17/18.0
string                / automatic, pointer to char,
                        local in main( void ) ret signed int, init value = "AbCdEfG"
    9/9=0            9/9:0           18/18.0
x                     / param of constructor A::A, signed int
    5/12:10          5/23.10
x                     / param of constructor B::B, signed int
    5/12:11          5/23.11
xx                    / automatic, float,
                        local in main( void ) ret signed int, init value = 1
   10/9=0           10/9:0           19/18.0
___________________________________________________________________________________________
'='write '.'read '*='indir-write '*.'indir-read '&'read-addr ':'def '%'decl ':%'extdecl '%%'use

Erklärung

(1)

Name, Speicherklasse und Datentyp der Variablen

(2)

Jeweils von links nach rechts:
Quellprogrammzeile und Spalte, in der die Variable erscheint,
Abkürzungssymbol zur Verwendung der Variablen und
Nummer der Quelldatei bzw. des (Include-)Elements aus der FILETABLE

7/3:10 bedeutet z.B.: In Zeile 7, Spalte 3 des Include-Elements incl1.h (10) wird die Variable a
definiert (:).

FUNCTIONS-Teil der Querverweisliste

******* XREF - LISTING ********    BS2000 C/C++ COMPILER 04.0B02    DATE:2023-04-02 PAGE: 5
         FUNCTIONS      SOURCENAME:*BS2000(MAINPROG)                TIME=17:37:52
___________________________________________________________________________________________
foo                   / public member of class 'B', inline function( void ) ret void  -- (1)
    6/11:11         22/5.0                                                            -- (2)
foo                   / public member of class 'A', inline function( void ) ret void
    6/11:10         20/5.0           21/9.0           23/9.0
main                  / function( void ) ret signed int
    7/5:0
A                     / public member of class 'A', inline constructor( signed int )
    5/6:10           7/3.10           5/26.11
B                     / public member of class 'B', inline constructor( signed int )
    5/6:11           7/3.11
___________________________________________________________________________________________
'.'call ':'def '&'decl '%'extdecl ':^'forward '&.'read-addr

Erklärung

(1)

Name der Funktion, Geltungsbereich, Signatur (Typ der Parameter und Returntyp) und Speicherklasse;
bei Elementfunktionen zusätzliche Informationen über das Zugriffsrecht (z.B. public) und die sie
enthaltende Klasse oder Union

(2)

Jeweils von links nach rechts:
Quellprogrammzeile und Spalte, in der die Funktion erscheint,
Art der Verwendung an dieser Stelle und
Nummer der Quelldatei bzw. des (Include-)Elements aus der FILETABLE

6/11:11 bedeutet z.B.: In Zeile 6, Spalte 11 des Include-Elements incl2.h (11) wird die Funktion foo
definiert (:).