%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 DECLARE LONG CONSTANT RSDM$_JOIN_SYSTEM = 1 ! System RD Join function DECLARE LONG CONSTANT RSDM$_JOIN_DEFAULT = 2 ! Process default RD Join function DECLARE LONG CONSTANT RSDM$_JOIN_DOMAIN = 3 ! Other RD Join function DECLARE LONG CONSTANT RSDM$_LEAVE = 4 ! Leave RD function DECLARE LONG CONSTANT RSDM$K_SYSTEM_RSDM_ID = 1 ! System RSDM_ID DECLARE LONG CONSTANT RSDM$K_PROCESS_RSDM_ID = 2 ! Process RSDM_ID ! + ! RSDM$ bitfields ! - DECLARE LONG CONSTANT RSDM$M_READ = x'00000001' DECLARE LONG CONSTANT RSDM$M_WRITE = x'00000002' DECLARE LONG CONSTANT RSDM$M_LOCK = x'00000004' DECLARE LONG CONSTANT RSDM$S_RSDMBITS = 4 record RSDMBITS variant case group RSDM$r_fill_0 variant case LONG RSDM$L_MISC_ACCESS case group RSDM$r_fill_1 ! Read access ! Write access ! Lock access BYTE READ_bits ! COMMENT ADDED BY SDL - READ_bits contains bits READ through fill_2 end group RSDM$r_fill_1 end variant end group RSDM$r_fill_0 end variant end record RSDMBITS