For non-byte-compiled, interpreted functions, it was using whatever
the current buffer was at the time the function was called, which is
completely wrong. But this uses backtrace-frame to get the name of
the function the debug macro is within, which seems to work.
Also published as epdh/debug-warn at
<https://github.com/alphapapa/emacs-package-dev-handbook#debug-warn-macro>.
Too useful not to have, but anaphora.el is only in MELPA, and I'm
trying to avoid MELPA-only dependencies. dash.el has --first, but not
an aprog1 equivalent, so we might as well just do this.