Render canonical_diag_gate_hint(name) into a human-readable
sentence for the “requested but not registered” warning. Phrased
as a QUESTION, never a diagnosis: the hint is a hand-maintained
mirror of register_default_diags’s gates (§11.2 of the PR-64
plan) and can drift from the true cause. An empty hint means the
diagnostic is one of the four unconditional ones (SSH/u/v/KE) and
SHOULD have registered — that is a bug, not a closed gate.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | name |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| character(len=64), | private | :: | hint |
pure function gate_clause(name) result(clause) !! Render `canonical_diag_gate_hint(name)` into a human-readable !! sentence for the "requested but not registered" warning. Phrased !! as a QUESTION, never a diagnosis: the hint is a hand-maintained !! mirror of `register_default_diags`'s gates (§11.2 of the PR-64 !! plan) and can drift from the true cause. An empty hint means the !! diagnostic is one of the four unconditional ones (SSH/u/v/KE) and !! SHOULD have registered — that is a bug, not a closed gate. character(len=*), intent(in) :: name character(len=96) :: clause character(len=64) :: hint hint = canonical_diag_gate_hint(name) if (len_trim(hint) > 0) then clause = "Is "//trim(hint)//" off?" else clause = "This diagnostic has no feature gate — please report this." end if end function gate_clause