%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 ! + ! Define SRM Hardware symbols ! - DECLARE LONG CONSTANT SRM$K_INT_OVF_T = 1 ! Integer overflow trap code DECLARE LONG CONSTANT SRM$K_INT_DIV_T = 2 ! Integer divide by zero trap code DECLARE LONG CONSTANT SRM$K_FLT_OVF_T = 3 ! Floating overflow trap code DECLARE LONG CONSTANT SRM$K_FLT_DIV_T = 4 ! Floating/decimal Divide by zero trap code DECLARE LONG CONSTANT SRM$K_FLT_UND_T = 5 ! Floating Underflow trap code DECLARE LONG CONSTANT SRM$K_DEC_OVF_T = 6 ! Decimal string overflow trap code DECLARE LONG CONSTANT SRM$K_SUB_RNG_T = 7 ! Subscript range trap DECLARE LONG CONSTANT SRM$K_FLT_OVF_F = 8 ! Floating Overflow fault code DECLARE LONG CONSTANT SRM$K_FLT_DIV_F = 9 ! Floating Divide by zero fault code DECLARE LONG CONSTANT SRM$K_FLT_UND_F = 10 ! Floating Underflow fault code