--- Begin Message ---
Subject: |
warn about misplaced or duplicated doc strings, `declare` or `interactive` forms |
Date: |
Sat, 11 Jun 2022 14:07:03 +0200 |
In function definitions, doc strings, `declare` and `interactive` forms are
each optional but must appear in that order and duplications are not permitted.
Many violations against these rules go undetected.
The attached patch adds checks to `defun` and `defmacro`. Violations result in
compilation warnings but it could be changed into hard errors if desired. It
also accepts `(:documentation EXPR)` as alternative to a doc string literal,
which currently doesn't work i all cases.
Applying it reveals a handful of mistakes in the Emacs source tree, and in some
external packages.
0001-function-and-macro-attribute-order-warning-patch.patch
Description: Binary data
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#55905: warn about misplaced or duplicated doc strings, `declare` or `interactive` forms |
Date: |
Fri, 17 Jun 2022 17:30:17 +0200 |
11 juni 2022 kl. 14.44 skrev Lars Ingebrigtsen <larsi@gnus.org>:
> This is most welcome -- I can never remember myself what the order of
> declare and interactive is.
Same here (which prompted the patch). A slightly updated version has now been
pushed to master.
There's the possibility of making the parsing more tolerant with respect to
ordering, and possibly allow multiple `declare` forms. It would be easy enough.
--- End Message ---