Subject: bug#7563: 23.2; `split-string-and-unquote' mis-documented / purpose unclear

From: Dave Abrahams <[email-masked]>
Date: Sun, 05 Dec 2010 16:28:16 -0500

This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the [email-masked] mailing list,
and to the gnu.emacs.bug news group.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug.  If you can, give
a recipe starting from `emacs -Q':

The info doc for split-string ends with:

  If you need to split a string that is a shell command, where
  individual arguments could be quoted, see split-string-and-unquote.

Here's the info doc for split-string-and-unquote.

   -- Function: split-string-and-unquote string &optional separators
       This function splits STRING into substrings at matches for the
       regular expression SEPARATORS, like `split-string' does (*note
       Creating Strings::); in addition, it removes quoting from the
       substrings.  It then makes a list of the substrings and returns it.

       If SEPARATORS is omitted or `nil', it defaults to `"\\s-+"', which
       is a regular expression that matches one or more characters with
       whitespace syntax (*note Syntax Class Table::).

       This function performs two types of quoting: enclosing a whole
       string in double quotes `"..."', and quoting individual characters
       with a backslash escape `\'.  The latter is also used in Lisp
       strings, so this function can handle those as well.

First problem: the last paragraph above is simply wrong.
split-string-and-unquote doesn't perform any type of quoting; it
un-quotes.

Second problem: the doc implies that a string that could be executed
by the shell could be split into its constituent arguments by
split-string-and-unquote, but in general, it cannot, e.g.:

  (split-string-and-unquote "'foo bar'") => ("'foo" "bar'")
  (split-string-and-unquote "foo\\ bar") => ("foo" "bar")

I'm not sure what this function is really supposed to be for, but any
implication that it properly handles conversion into shell arguments
is highly misleading.  Some motivation should be given for proper use
of split-string-and-unquote, or it should be deprecated.

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
For information about debugging Emacs, please read the file
/Applications/Emacs.app/Contents/Resources/etc/DEBUG.

In GNU Emacs 23.2.1 (x86_64-apple-darwin, NS apple-appkit-1038.29)
 of 2010-05-08 on black.local
Windowing system distributor `Apple', version 10.3.1038
configured using `configure  '--host=x86_64-apple-darwin' '--build=i686-apple-darwin' '--with-ns' 'build_alias=i686-apple-darwin' 'host_alias=x86_64-apple-darwin' 'CC=gcc -mmacosx-version-min=10.5''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  diff-auto-refine-mode: t
  global-auto-complete-mode: t
  auto-complete-mode: t
  yas/global-mode: t
  show-paren-mode: t
  server-mode: t
  global-auto-revert-mode: t
  delete-selection-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-. C-, C-k r e p r <M-backspace> w i l l SPC r e p 
r e e <backspace> s e n t SPC a SPC l i s t SPC o f 
SPC a r g u m e n t s C-, C-, C-. C-, C-, C-, C-, C-, 
C-, C-p C-p C-p C-n C-n C-n C-e C-p C-e C-, C-, C-, 
C-, C-, C-, C-h f s p i <backspace> l i t - s t <tab> 
- a n <tab> <return> <help-echo> <down-mouse-1> <mouse-1> 
<down-mouse-1> <mouse-1> C-h f s p l i t - s t <tab> 
- a n <tab> <return> C-x C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-p C-p C-p C-p C-. C-. C-. C-. C-. C-. 
C-. C-. C-. C-e C-n C-, C-, C-, C-, C-, C-, C-, C-e 
C-, C-, C-, C-, C-, C-, C-, C-, C-, C-, C-. C-. C-. 
C-. C-. C-. C-. C-. C-h f <return> C-n C-n C-n C-n 
C-n C-n C-n C-n C-e C-p C-p C-p C-p C-p C-n C-n C-n 
C-e C-n C-p C-p C-p C-p C-p C-p C-p C-p C-, C-, C-, 
C-, C-, C-, C-, C-, C-, C-, C-n C-n C-n C-h f C-g C-g 
C-h i u M-< s s p l i t - s t r i n g - a n d - u n 
<return> <return> C-s C-s C-n C-n C-n C-s u n q u o 
t e C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-p C-p C-p C-p C-p C-n C-a 
C-SPC C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p 
C-p C-p M-w C-x C-p M-x r e p o r t - e m <tab> <r
eturn>

Recent messages:
Type C-x 1 to delete the help window. [3 times]
Auto-saving...
 [12 times]
Quit [2 times]
 [2 times]
Mark set [2 times]
 [2 times]
Mark saved where search started
Mark set
 [4 times]

Load-path shadows:
/Users/dave/.emacs.d/3rd-party/package.d/bibl-mode/bibl-mode hides /Users/dave/.emacs.d/3rd-party/package.d/bibl-mode/bibl-mode/bibl-mode
/Users/dave/.emacs.d/3rd-party/package.d/bibl-mode/bibl-lists hides /Users/dave/.emacs.d/3rd-party/package.d/bibl-mode/bibl-mode/bibl-lists
/Users/dave/.emacs.d/3rd-party/package.d/bibl-mode/bibl-grab hides /Users/dave/.emacs.d/3rd-party/package.d/bibl-mode/bibl-mode/bibl-grab
/Users/dave/.emacs.d/3rd-party/package.d/magit/etc/emacs/site-start.d/50magit hides /Users/dave/.emacs.d/3rd-party/package.d/magit/magit/etc/emacs/site-start.d/50magit
/Users/dave/.emacs.d/3rd-party/package.d/magit/magit/share/emacs/site-lisp/magit hides /Users/dave/.emacs.d/3rd-party/package.d/magit/share/emacs/site-lisp/magit
/Users/dave/.emacs.d/3rd-party/package.d/magit/magit/share/emacs/site-lisp/magit-topgit hides /Users/dave/.emacs.d/3rd-party/package.d/magit/share/emacs/site-lisp/magit-topgit
/Users/dave/.emacs.d/3rd-party/package.d/magit/magit/share/emacs/site-lisp/magit-svn hides /Users/dave/.emacs.d/3rd-party/package.d/magit/share/emacs/site-lisp/magit-svn
/Users/dave/.emacs.d/3rd-party/package.d/magit/magit/share/emacs/site-lisp/magit-key-mode hides /Users/dave/.emacs.d/3rd-party/package.d/magit/share/emacs/site-lisp/magit-key-mode
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-weather hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-weather
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-util hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-util
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-ucs hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-ucs
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-tabmenu hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-tabmenu
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-symbol hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-symbol
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-session hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-session
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-search hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-search
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-rss hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-rss
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-proc hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-proc
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-perldoc hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-perldoc
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-namazu hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-namazu
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-mail hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-mail
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-load hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-load
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-lnum hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-lnum
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-image hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-image
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-hist hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-hist
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-form hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-form
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-filter hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-filter
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-fb hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-fb
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-favicon hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-favicon
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-ems hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-ems
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-dtree hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-dtree
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-cookie hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-cookie
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-ccl hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-ccl
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-bug hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-bug
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-bookmark hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-bookmark
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/w3m-antenna hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/w3m-antenna
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/octet hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/octet
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/mime-w3m hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/mime-w3m
/Users/dave/.emacs.d/3rd-party/package.d/w3m/lisp/mew-w3m hides /Users/dave/.emacs.d/3rd-party/package.d/w3m/w3m/lisp/mew-w3m
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/sha1 hides /Applications/Emacs.app/Contents/Resources/lisp/sha1
/Users/dave/.emacs.d/3rd-party/package.d/semi/lisp/semi/pgg hides /Applications/Emacs.app/Contents/Resources/lisp/pgg
/Users/dave/.emacs.d/3rd-party/package.d/semi/lisp/semi/pgg-pgp5 hides /Applications/Emacs.app/Contents/Resources/lisp/pgg-pgp5
/Users/dave/.emacs.d/3rd-party/package.d/semi/lisp/semi/pgg-pgp hides /Applications/Emacs.app/Contents/Resources/lisp/pgg-pgp
/Users/dave/.emacs.d/3rd-party/package.d/semi/lisp/semi/pgg-parse hides /Applications/Emacs.app/Contents/Resources/lisp/pgg-parse
/Users/dave/.emacs.d/3rd-party/package.d/semi/lisp/semi/pgg-gpg hides /Applications/Emacs.app/Contents/Resources/lisp/pgg-gpg
/Users/dave/.emacs.d/3rd-party/package.d/semi/lisp/semi/pgg-def hides /Applications/Emacs.app/Contents/Resources/lisp/pgg-def
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/md4 hides /Applications/Emacs.app/Contents/Resources/lisp/md4
/Users/dave/elisp/package.d/linum hides /Applications/Emacs.app/Contents/Resources/lisp/linum
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/hex-util hides /Applications/Emacs.app/Contents/Resources/lisp/hex-util
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/format-spec hides /Applications/Emacs.app/Contents/Resources/lisp/format-spec
/Users/dave/elisp/custom hides /Applications/Emacs.app/Contents/Resources/lisp/custom
/Users/dave/.emacs.d/3rd-party/package.d/remember/lisp/remember hides /Applications/Emacs.app/Contents/Resources/lisp/textmodes/remember
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org hides /Applications/Emacs.app/Contents/Resources/lisp/org/org
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-xoxo hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-xoxo
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-wl hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-wl
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-w3m hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-w3m
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-vm hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-vm
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-timer hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-timer
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-table hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-table
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-src hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-src
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-rmail hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-rmail
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-remember hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-remember
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-publish hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-publish
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-protocol hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-protocol
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-plot hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-plot
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-mouse hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mouse
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-mobile hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mobile
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-mhe hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mhe
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-mew hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mew
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-macs hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-macs
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-mac-message hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mac-message
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-list hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-list
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-latex hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-latex
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-jsinfo hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-jsinfo
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-irc hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-irc
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-install hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-install
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-inlinetask hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-inlinetask
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-info hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-info
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-indent hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-indent
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-id hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-id
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-icalendar hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-icalendar
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-html hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-html
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-habit hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-habit
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-gnus hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-gnus
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-freemind hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-freemind
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-footnote hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-footnote
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-feed hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-feed
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-faces hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-faces
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-exp hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-exp
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-exp-blocks hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-exp-blocks
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-docbook hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-docbook
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-datetree hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-datetree
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-crypt hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-crypt
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-compat hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-compat
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-colview hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-colview
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-clock hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-clock
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-bibtex hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-bibtex
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-bbdb hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-bbdb
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-attach hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-attach
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-ascii hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-ascii
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-archive hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-archive
/Users/dave/.emacs.d/3rd-party/package.d/org-mode/lisp/org-agenda hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-agenda
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/trampver hides /Applications/Emacs.app/Contents/Resources/lisp/net/trampver
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp-uu hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp-uu
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp-smb hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp-smb
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp-gw hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp-gw
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp-ftp hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp-ftp
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp-fish hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp-fish
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp-compat hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp-compat
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp-cmds hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp-cmds
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/tramp-cache hides /Applications/Emacs.app/Contents/Resources/lisp/net/tramp-cache
/Users/dave/.emacs.d/3rd-party/package.d/tramp/lisp/socks hides /Applications/Emacs.app/Contents/Resources/lisp/net/socks
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/sasl hides /Applications/Emacs.app/Contents/Resources/lisp/net/sasl
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/sasl-ntlm hides /Applications/Emacs.app/Contents/Resources/lisp/net/sasl-ntlm
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/sasl-digest hides /Applications/Emacs.app/Contents/Resources/lisp/net/sasl-digest
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/sasl-cram hides /Applications/Emacs.app/Contents/Resources/lisp/net/sasl-cram
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/ntlm hides /Applications/Emacs.app/Contents/Resources/lisp/net/ntlm
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/hmac-md5 hides /Applications/Emacs.app/Contents/Resources/lisp/net/hmac-md5
/Users/dave/.emacs.d/3rd-party/package.d/flim/lisp/flim/hmac-def hides /Applications/Emacs.app/Contents/Resources/lisp/net/hmac-def
/Users/dave/.emacs.d/3rd-party/package.d/wanderlust/lisp/wl/rfc2368 hides /Applications/Emacs.app/Contents/Resources/lisp/mail/rfc2368
/Users/dave/.emacs.d/3rd-party/package.d/wanderlust/lisp/wl/utf7 hides /Applications/Emacs.app/Contents/Resources/lisp/gnus/utf7
/Users/dave/.emacs.d/3rd-party/package.d/semi/lisp/semi/smime hides /Applications/Emacs.app/Contents/Resources/lisp/gnus/smime
/Users/dave/.emacs.d/3rd-party/package.d/planner/contrib/timeclock hides /Applications/Emacs.app/Contents/Resources/lisp/calendar/timeclock

Features:
(shadow emacsbug apropos tmm electric debug ediff-merg ediff-diff
ediff-wind ediff-help ediff-util ediff-mult ediff-init ediff vc
vc-dispatcher find-dired grep compile man doc-mode magit log-edit
pcvs-util add-log magit-key-mode browse-url parse-time vc-cvs
make-mode sh-script executable dired-aux info tabify org-archive
org-mobile cal-china lunar solar cal-dst cal-bahai cal-islam
cal-hebrew holidays hol-loaddefs diary-lib diary-loaddefs cal-iso epg
disp-table org-eval org-bookmark bookmark org-mac-message org-habit
org-id org-crypt org-agenda diff-mode diff dabbrev thingatpt find-func
flow-fill smtp sasl sasl-anonymous sasl-login sasl-plain newcomment
elmo-filter mel-q-ccl smiley multi-isearch wl-score mule-util ssl
my-xmlunicode quail elmo-nntp elmo-sendlog elmo-internal elmo-imap4
time-stamp elmo-net elmo-dop elmo-cache elmo-map hl-line modb-legacy
modb-standard wl-mime mime-edit pgg-parse pccl pccl-20 ccl mailalias
mime-setup mail-mime-setup semi-setup mime-pgp pgg-def mime-play
filename mime-image wl-demo wl-draft eword-encode wl-template sendmail
wl-news wl-address wl-thread wl-folder wl-spam wl-action elmo-spam
elsp-header elsp-generic wl-gravatar gravatar gnus-picon gnus-art
mm-uu mml2015 mm-view smime gnus-sum nnoo gnus-group gnus-undo nnmail
mail-source format-spec gnus-start gnus-spec gnus-int gnus-range
message ecomplete rfc822 mml mml-sec password-cache mm-decode
mm-bodies mm-encode mailcap mail-parse rfc2231 rfc2047 rfc2045 qp
ietf-drums mailabbrev gmm-utils mailheader canlock sha1 sha1-el
hex-util hashcash gnus-win bbdb signature org-wl org byte-opt
ob-emacs-lisp ob-tangle ob-ref ob-lob ob-table org-footnote org-src
ob-comint comint ring ob-keys ob org-list org-faces org-compat
org-entities org-macs noutline outline cal-menu calendar cal-loaddefs
filladapt wl-summary ps-print ps-def lpr wl-refile wl-message
elmo-mime mmelmo-buffer mmelmo-imap mime-view calist semi-def mmimap
mime-parse mmbuffer mmgeneric wl-highlight elmo-multi mime-conf wl
wl-e21 wl-util pp elmo-flag elmo-localdir bytecomp byte-compile
wl-vars epg-config wl-version elmo elmo-signal elmo-msgdb modb
modb-generic modb-entity mime elmo-util emu invisible inv-23 poem
poem-e20 poem-e20_3 utf7 eword-decode mel mime-def alist std11
mcharset mcs-20 mcs-e20 pces pces-e20 pces-20 broken pcustom elmo-date
timezone path-util elmo-vars poe elmo-version pym static apel-ver
product luna vc-git dired regexp-opt package reporter init w3m-load
remember-autoloads planner-autoloads muse-autoloads
color-theme-autoloads bbdb-autoloads my-loaddefs auto-complete-config
auto-complete popup ido maxframe osx-plist xml windmove ffap dwa-util
initsplit yasnippet advice advice-preload derived easy-mmode edmacro
kmacro help-mode view assoc cl cl-19 paren server gnus gnus-ems
nnheader gnus-util netrc time-date mail-utils mm-util mail-prsvr
wid-edit autorevert delsel cus-start cus-load autoload help-fns
org-install tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win
easymenu tool-bar dnd fontset image fringe lisp-mode register page
menu-bar rfn-eshadow timer select scroll-bar mldrag mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev loaddefs button
minibuffer faces cus-face files text-properties overlay md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process ns multi-tty emacs)

-- 
Dave Abrahams
BoostPro Computing
http://www.boostpro.com