Error Messaging
...............
The back ends should use the function `nnheader-report' to report
error conditions--they should not raise errors when they aren't able to
perform a request. The first argument to this function is the back end
symbol, and the rest are interpreted as arguments to `format' if there
are multiple of them, or just a string if there is one of them. This
function must always returns `nil'.
(nnheader-report 'nnchoke "You did something totally bogus")
(nnheader-report 'nnchoke "Could not request group %s" group)
Gnus, in turn, will call `nnheader-get-report' when it gets a `nil'
back from a server, and this function returns the most recently
reported message for the back end in question. This function takes one
argument--the server symbol.
Internally, these functions access BACK-END`-status-string', so the
`nnchoke' back end will have its error message stored in
`nnchoke-status-string'.