There are 2 typos in previous report: >B) path="$BAZ/bin" ; fails (FOO is not a directory file name) Should be: B) path="$BAZ/bin" ; fails (BAZ is not a directory file name) >let ((foo "/foo/bar/baz/qux/:/quux/corge/:/grault/graply/waldo")) ; `ok' > (setenv "FOO" foo) > (parse-colon-path "$FOO")) >("/foo/bar/baz/qux/:/quux/corge/:/grault/graply/waldo/") It's _not_ ok: `parse-colon-path' returns list with 1 element (don't split on ':'). New patch applied over previous tests returns: ("/foo/bar/baz/" "/qux/quux/corge/") ("/foo/bar/baz/qux/" "/quux/corge/" "/grault/graply/waldo/") ("/foo/bar/baz/qux/" "/quux/corge/" "/grault/graply/waldo/") ("/foo/bar/baz/qux/" "/quux/corge/" "/grault/graply/waldo/") ("/foo/bar/baz/qux/" "/quux/corge/" "/grault/garply/waldo/") ("/foo/bar/baz/qux/" "/quux/corge/" "/grault/garply/waldo/") ("/foo/bar/baz/qux/" "/quux/corge/") ("/foo/bar/baz/qux/" "/quux/corge/") In GNU Emacs 25.0.93.1 (x86_64-pc-linux-gnu, GTK+ Version 2.24.30) of 2016-04-25 built on calancha-pc Repository revision: 0cd2e923dba8d8c7128b0c084ce6af22069e8db5