test_prep Program

Uses

numeric operators are +,-,,/,*, () are supported, logical operators are | .EQ.| .NE.| .GE.| .GT.| .LE.| .LT.|.NOT.|.AND.| .OR.| .EQV.|.NEQV.| | == | /= | >= | > | <= | < | ! | && | || | == | != | $DEFINE|$REDEFINE variable_name[=expression][;…] Predefined values are UNKNOWN=0 LINUX=1 MACOS=2 WINDOWS=3 CYGWIN=4 SOLARIS=5 FREEBSD=6 OPENBSD=7 In addition OS is set to what the program guesses the system type is. SYSTEMON is 1 if –system is used on the command line, else it is 0. $UNDEFINE|$UNDEF variable_name[;…]

CONDITIONAL CODE SELECTION $IF logical_integer-based_expression | $IFDEF|$IFNDEF variable_name $IF DEFINED(varname) | $IF .NOT. DEFINED(varname) | $ELSEIF|$ELIF logical_integer-based_expression $ELSE $ENDIF MACRO STRING EXPANSION AND TEXT REPLAY $SET varname string $IMPORT envname[;…]

Unless at least one variable name is defined no expansion occurs. $set author William Shakespeare $import HOME write(,)’ File Line HOME /home/urbanjs/venus/V600

$PARCEL [blockname] ! create a reuseable parcel of text that can be expanded $POST blockname ! insert a defined parcel of text

EXTERNAL FILES (see $BLOCK … –file also) $OUTPUT filename [-append] $INCLUDE filename

TEXT BLOCK FILTERS $BLOCK [comment|null|write|variable [-varname NAME]]|help|version [-file NAME [-append]] SYSTEM COMMANDS $SYSTEM command

INFORMATION $MESSAGE message_to_stderr $SHOW [defined_variable_name][;…] METADATA $IDENT metadata
$@(#) metadata

$STOP [stop_value[ “message”]] | $QUIT [“message”]


Contents


Variables

TypeAttributesNameInitial
character(len=:), allocatable:: data(:)
character(len=:), allocatable:: expected(:)
integer :: i
integer :: ierr
character(len=:), allocatable:: result(:)
logical, allocatable:: tally(:)

Subroutines

subroutine block()

Arguments

None

subroutine block_2()

Arguments

None

subroutine block_3()

Arguments

None

subroutine conditionals()

Arguments

None

subroutine conditionals_2()

Arguments

None

subroutine conditionals_3()

Arguments

None

subroutine define()

Arguments

None

subroutine env()

Arguments

None

subroutine expressions()

Arguments

None

subroutine expressions_2()

Arguments

None

subroutine flushit()

Arguments

None

subroutine ident()

Arguments

None

subroutine logics()

Arguments

None

subroutine message()

Arguments

None

subroutine misc()

Arguments

None

subroutine output()

Arguments

None

subroutine parcel()

Arguments

None

subroutine quit()

Arguments

None

subroutine sample()

Arguments

None

subroutine set()

Arguments

None

subroutine stop()

Arguments

None

subroutine teardown(name, expected_exitstat)

Arguments

TypeIntentOptionalAttributesName
character(len=*), intent(in) :: name
integer, optional :: expected_exitstat