Subject: bug#31150: Entries in load-path should not have trailing slashes

From: Radon Rosborough <[email-masked]>
Date: Fri, 13 Apr 2018 16:27:24 -0700

When I perform a fresh build of AUCTeX from Git, I get the following
code as part of tex-site.el:

    (defvar TeX-lisp-directory
      (expand-file-name "auctex" (file-name-directory load-file-name))
      "The directory where most of the AUCTeX lisp files are located.
    For the location of lisp files associated with
    styles, see the variables TeX-style-* (hand-generated lisp) and
    TeX-auto-* (automatically generated lisp).")

    (add-to-list 'load-path TeX-lisp-directory)

This is problematic. As the documentation for `load-path' states:

    Use ‘directory-file-name’ when adding items to this path.

But `TeX-lisp-directory' has a trailing slash. This seems like a bug
to me. Can it be fixed?

The reason this came up is that I maintain an Emacs package manager,
straight.el. Once straight.el builds a package, it adds the directory
to `load-path', using `directory-file-name' as specified by the
documentation of `load-path'. But since AUCTeX insists on also adding
its own entry to `load-path', and does so with a superfluous trailing
slash, we end up with two duplicate entries. Under some
configurations, this causes duplicate entries to appear when using M-x
find-library.

Best regards,
Radon Rosborough