Turn OFF the registered diagnostic name so the dispatcher skips
it entirely (no fill, no fold, no emit). Fail-loud if name
matches no registered var — a typo must not silently leave a
diagnostic running. Lists the registered names on abort.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Variables
Type
Visibility
Attributes
Name
Initial
character(len=1024),
private
::
avail
integer,
private
::
i
Source Code
subroutine ocean_diag_disable(this,name)!! Turn OFF the registered diagnostic `name` so the dispatcher skips!! it entirely (no fill, no fold, no emit). Fail-loud if `name`!! matches no registered var — a typo must not silently leave a!! diagnostic running. Lists the registered names on abort.class(ocean_diag_t),intent(inout)::thischaracter(len=*),intent(in)::nameinteger::icharacter(len=1024)::availdo i=1,this%nvarsif(trim(this%vars(i)%name)==trim(name))thenthis%vars(i)%enabled=.false.return end if end doavail=""do i=1,this%nvarsavail=trim(avail)//" "//trim(this%vars(i)%name)end do call logger%error("ocean_diag%disable: no registered diagnostic named '"//&trim(name)//"' — registered:"//trim(avail))error stop"ocean_diag%disable: unknown diagnostic name"end subroutine ocean_diag_disable