VERSION GNU Emacs 26.1 (build 1, x86_64-apple-darwin14.5.0, NS appkit-1348.17 Version 10.10.5 (Build 14F2511)) of 2018-05-28 DESCRIPTION `emacs-lisp-docstring-fill-column' shadows `fill-column' in too many cases in emacs-lisp-mode. The documentation of `emacs-lisp-docstring-fill-column' states: "Value of ‘fill-column’ to use when filling a docstring". But it incorrectly seems to be used in a lot more cases than just in a docstring (the only case that I've found where ‘fill-column’ is actually respected is within comments). A work-around is to set `emacs-lisp-docstring-fill-column' to nil, but it would be nice to have it working properly instead. I might be missing something, but think the incorrect behavior is to be found in `lisp-fill-paragraph' that is invoked by `fill-paragraph' through `fill-paragraph-function'. It seems like `lisp-fill-paragraph' unconditionally sets `fill-column' to `emacs-lisp-docstring-fill-column' without checking whether point is within a doc string first. The only requirements for enable shadowing currently seems to be "(and (integerp emacs-lisp-docstring-fill-column) (derived-mode-p 'emacs-lisp-mode))", which doesn't seems sufficient. TO REPRODUCE * emacs -q * C-x b (i.e. switch to *scratch* buffer) * M-x emacs-lisp-mode * M-x column-number-mode (optional) * (setq fill-column 80) ;used by `fill-paragraph' * (setq emacs-lisp-docstring-fill-column 40) ;should override `fill-column' in doc strings only! * Paste in the line "word00 word01 word02 word03 word04 word05 word06 word07 word08 word09 word10 word11" (i.e. 12 words, 83 chars) * M-x fill-paragraph (with point on pasted line above) * The value of `emacs-lisp-docstring-fill-column' (40) is incorrectly used when formatting. The value of `fill-column' (80) should have been used instead, since the point is not in a doc string. Note that the default value of `emacs-lisp-docstring-fill-column' is 65 (rather than nil), so this malformatting is enabled by default.