sqr_fault Module


Used by


Interfaces

interface

Post-I/O hook. Counts one I/O event. In the on build, if the armed ordinal has been reached and ios is still zero, sets ios to a synthetic non-zero error; it never clears a real error and never alters ios in the off build. Not pure: the on body advances saved state — the seam is inherently stateful, so the interface cannot promise purity. Arm injection: the n-th io_check call counted from now forces a synthetic failure. n <= 0 disarms. The call ordinal is reset to zero. No-op in the off build. Disarm injection and reset the global call ordinal. No-op in the off build. Number of io_check calls since the last fault_arm / fault_disarm. Always 0 in the off build — a test can use this both to size an injection sweep and to detect that injection is unavailable (production library linked).

  • public module function fault_count() result(c)

    Arguments

    None

    Return Value integer

interface

Post-I/O hook. Counts one I/O event. In the on build, if the armed ordinal has been reached and ios is still zero, sets ios to a synthetic non-zero error; it never clears a real error and never alters ios in the off build. Not pure: the on body advances saved state — the seam is inherently stateful, so the interface cannot promise purity. Arm injection: the n-th io_check call counted from now forces a synthetic failure. n <= 0 disarms. The call ordinal is reset to zero. No-op in the off build. Disarm injection and reset the global call ordinal. No-op in the off build. Number of io_check calls since the last fault_arm / fault_disarm. Always 0 in the off build — a test can use this both to size an injection sweep and to detect that injection is unavailable (production library linked).

  • public module subroutine io_check(ios)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(inout) :: ios

interface

Post-I/O hook. Counts one I/O event. In the on build, if the armed ordinal has been reached and ios is still zero, sets ios to a synthetic non-zero error; it never clears a real error and never alters ios in the off build. Not pure: the on body advances saved state — the seam is inherently stateful, so the interface cannot promise purity. Arm injection: the n-th io_check call counted from now forces a synthetic failure. n <= 0 disarms. The call ordinal is reset to zero. No-op in the off build. Disarm injection and reset the global call ordinal. No-op in the off build. Number of io_check calls since the last fault_arm / fault_disarm. Always 0 in the off build — a test can use this both to size an injection sweep and to detect that injection is unavailable (production library linked).

  • public module subroutine fault_arm(n)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: n

interface

Post-I/O hook. Counts one I/O event. In the on build, if the armed ordinal has been reached and ios is still zero, sets ios to a synthetic non-zero error; it never clears a real error and never alters ios in the off build. Not pure: the on body advances saved state — the seam is inherently stateful, so the interface cannot promise purity. Arm injection: the n-th io_check call counted from now forces a synthetic failure. n <= 0 disarms. The call ordinal is reset to zero. No-op in the off build. Disarm injection and reset the global call ordinal. No-op in the off build. Number of io_check calls since the last fault_arm / fault_disarm. Always 0 in the off build — a test can use this both to size an injection sweep and to detect that injection is unavailable (production library linked).

  • public module subroutine fault_disarm()

    Arguments

    None