There are lots of toggle-read-only warnings in the Emacs Lisp source
tree. As far as I can tell, the overwhelming majority of these are all
legitimate use cases. The typical intention is "do whatever the
`toggle-read-only' command does, then do some other stuff on top of
that," so the caveat about toggle-read-only not being used in Lisp code
is bogus.
Instead of sprinking with-no-warnings all over, I propose removing
toggle-read-only from byte-compile-interactive-only-functions. Any
objections?