%IF %DECLARED ( %BASIC$QUADWORD_DECLARED ) = 0 %THEN RECORD BASIC$QUADWORD LONG FILL ( 2 ) END RECORD %LET %BASIC$QUADWORD_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$OCTAWORD_DECLARED ) = 0 %THEN RECORD BASIC$OCTAWORD LONG FILL ( 4 ) END RECORD %LET %BASIC$OCTAWORD_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$F_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$F_FLOATING_COMPLEX SINGLE REAL_PART SINGLE IMAGINARY_PART END RECORD %LET %BASIC$F_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$D_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$D_FLOATING_COMPLEX DOUBLE REAL_PART DOUBLE IMAGINARY_PART END RECORD %LET %BASIC$D_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$G_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$G_FLOATING_COMPLEX GFLOAT REAL_PART GFLOAT IMAGINARY_PART END RECORD %LET %BASIC$G_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$H_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$H_FLOATING_COMPLEX HFLOAT REAL_PART HFLOAT IMAGINARY_PART END RECORD %LET %BASIC$H_FLOATING_COMPLEX_DECL = 1 %END %IF ! ! TPARSE CONTROL BLOCK. THIS BLOCK IS ONE OF THE ARGUMENTS USED TO CALL TPARSE, ! AND BECOMES THE ARGUMENT LIST TO ACTION ROUTINES. ! DECLARE LONG CONSTANT TPA$K_COUNT0 = 8 ! ZERO LEVEL VALUE IS 8 DECLARE LONG CONSTANT TPA$M_BLANKS = x'00000001' DECLARE LONG CONSTANT TPA$M_ABBREV = x'00000002' DECLARE LONG CONSTANT TPA$M_ABBRFM = x'00000004' DECLARE LONG CONSTANT TPA$M_AMBIG = x'00010000' DECLARE LONG CONSTANT TPA$K_LENGTH0 = 36 ! LENGTH OF ZERO LEVEL PARAMETER BLOCK DECLARE LONG CONSTANT TPA$C_LENGTH0 = 36 ! LENGTH OF ZERO LEVEL PARAMETER BLOCK DECLARE LONG CONSTANT TPA$S_TPADEF = 36 record TPADEF LONG TPA$L_COUNT ! ARGUMENT COUNT ( NUMBER OF LONGWORDS ) group TPA$R_OPTIONS_OVERLAY variant case LONG TPA$L_OPTIONS ! OPTIONS LONGWORD case group TPA$R_OPTIONS_BITS ! PROCESS BLANKS AND TABS EXPLICITLY ! ALLOW MINIMAL ABBREVIATION ! ALLOW FIRST MATCH ABBREVIATION ! AMBIGUOUS KEYWORD AT THIS STATE LONG BLANKS_bits ! COMMENT ADDED BY SDL - BLANKS_bits contains bits BLANKS through fill_12 end group TPA$R_OPTIONS_BITS case group TPA$R_OPTIONS_FIELDS BYTE TPADEF$$_FILL_2 ( 1 to 3 ) BYTE TPA$B_MCOUNT ! MINIMUM ABBREVIATION ON KEYWORDS end group TPA$R_OPTIONS_FIELDS end variant end group TPA$R_OPTIONS_OVERLAY LONG TPA$L_STRINGCNT ! BYTE COUNT OF STRING BEING PARSED LONG TPA$L_STRINGPTR ! ADDRESS OF STRING BEING PARSED LONG TPA$L_TOKENCNT ! BYTE COUNT OF CURRENT MATCHING TOKEN LONG TPA$L_TOKENPTR ! ADDRESS OF MATCHING TOKEN group TPA$R_CHAR_OVERLAY variant case LONG TPA$L_CHAR ! ASCII CODE OF SINGLE CHARACTER TOKEN case BYTE TPA$B_CHAR ! BYTE FORM OF SINGLE CHAR CELL end variant end group TPA$R_CHAR_OVERLAY LONG TPA$L_NUMBER ! NUMERIC VALUE OF NUMERIC TOKEN LONG TPA$L_PARAM ! PARAMETER LONGWORD FROM STATE TABLE end record TPADEF