Subject: 26.2.90; mapconcat "SEPARATOR must be a string." is incorrect
From: Xu Chunyang <[email-masked]>
To: [email-masked]
Date: Fri, 28 Jun 2019 21:23:24 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

C-h f mapconcat says

> SEPARATOR must be a string.

but nil works fine

    (mapconcat #'identity '("a" "b") nil)
    ;; => "ab"

and `string-join` relies on this fact (by the way, string-join's
docstring doesn't explain the case when separator is omitted or nil)

    (defsubst string-join (strings &optional separator)
      "Join all STRINGS using SEPARATOR."
      (mapconcat 'identity strings separator))

C-h S mapconcat says

> SEPARATOR, which also must be a string, or a vector or list of
> characters.

C-h f concat says

> Each argument may be a string or a list or vector of characters (integers).