The +childframe check was too simple (and unnecessary, since the posframe function autoloaded).
Use flycheck-posframe in GUI Emacs (26+) and flycheck-popup-tip everywhere else.