The main documentation of the Output_Test Procedure contains additional explanation of this code listing.
subroutine Output_Test (Test_Name, Success, Unit) ! Input variables. type(integer), intent(in), optional :: Unit ! Output unit. type(logical) :: Success ! The result of the test. type(character,*) :: Test_Name ! The name of the test. ! Internal variable. type(integer) :: A_Unit ! Actual output unit. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! Verify requirements - none. ! Only output on the IO PE. if (this_is_IO_PE) then ! Set unit number. if (PRESENT(Unit)) then A_Unit = Unit else A_Unit = 6 end if ! Output test result. if (Success) then write (A_Unit,100) Test_Name, ' check successful.' else write (A_Unit,100) Test_Name, ' check failed.' end if end if ! Format statement. 100 format (/, 2x, 2a) ! Verify guarantees - none. return end subroutine Output_Test