Re: Wrong type argument: stringp, nil on global-ede-mode

Eric Ludlam <[email protected]> Thu, 7 Jan 2016 19:16:42 -0500
Newsgroups gmane.emacs.cedet
Message-ID <[email protected]>
I haven't been able to repro the problem w/out forcing different kinds 
of values into the function calls.   I generally avoid using ~/ type 
notation in EDE to avoid the ambiguities, so it seems like something 
else is converting the full file name back into the summarized version 
which is why I suspect tramp.

Does it work if you start emacs with -q, and then load your setup?

Eric

On 01/04/2016 11:49 PM, Dumsani Ndzinisa wrote:
> Concerning "tramp", when loading the Helm package I do get a message
> referring to that. Here is some sample output from the *Messages* buffer
> below. I reverted to Emacs 24.5 (just switched to that tagged point in the
> Emacs git repo and installed), and the very same init file loads
> successfully. The message (or warning) about "tramp" though is still there.
>
>
> For information about GNU Emacs and the GNU system, type C-h C-a.
> package
> (("gnu" . "http://elpa.gnu.org/packages/") ("melpa" .
> "http://melpa.milkbox.net/packages/"))
> t
> monokai-theme
> t
> switch-window
> ace-jump-mode
> mc/mark-next-line-this
> mc/mark-previous-line-this
> "g"
> ("~/.emacs.d/custom"
> "/home/dumsani/.emacs.d/elpa/ace-jump-mode-20140616.115"
> "/home/dumsani/.emacs.d/elpa/anzu-20151015.405"
> "/home/dumsani/.emacs.d/elpa/auctex-11.89/"
> "/home/dumsani/.emacs.d/elpa/auctex-11.89"
> "/home/dumsani/.emacs.d/elpa/auto-complete-auctex-20140223.958"
> "/home/dumsani/.emacs.d/elpa/auto-complete-20151211.227"
> "/home/dumsani/.emacs.d/elpa/autopair-20140825.427"
> "/home/dumsani/.emacs.d/elpa/cdlatex-20140707.426"
> "/home/dumsani/.emacs.d/elpa/clang-format-20151116.438"
> "/home/dumsani/.emacs.d/elpa/clean-aindent-mode-20150816.2029"
> "/home/dumsani/.emacs.d/elpa/column-enforce-mode-20140902.949" ...)
> ad-handle-definition: `tramp-read-passwd' got redefined
> setup-helm
> setup-helm-gtags
> setup-applications
> setup-cedet
> setup-convenience
> setup-data
>
>
>
> 2016-01-05 2:49 GMT+02:00 Eric Ludlam <[email protected]
> <mailto:[email protected]>>:
>
>     It looks like:
>
>     (file-name-directory (directory-file-name dir))
>
>     when dir == "~/" returns nil.  I don't know how you got ~/ into the
>     stack though.  It started out as "/home/dumsani", and it was
>     converted somewhere into "~/" for you.  Do you have anything extra
>     loaded that overrides file system things like tramp, or an
>     equivalent that might be overriding locate-dominating-file, or
>     something like that?  I didn't see anything like that in your setup
>     file.
>
>     Eric
>
>
>
>     On 01/04/2016 03:58 AM, Dumsani Ndzinisa wrote:
>
>         Hi Eric, Everyone,
>
>         Below is the error message and a backtrace from the Emacs
>         debugger. I opened
>         Emacs with the -q option and then evaluated the statements in my
>         .emacs
>         init file
>         individually using C-x C-e.
>
>         Debugger entered--Lisp error: (wrong-type-argument stringp nil)
>             file-name-as-directory(nil)
>             #[(this dir)
>         "\306 ! \307\n\310\"\211 ;\205 \311 \"\211
>         \203!\f\205D\312\f!\202D\307\n\313\"\211 ;\203/\314\202C\315
>         !\205C
>         \205C\316
>         !\205C\317
>           \")+\207" [dir d this pf f dirmatch file-name-as-directory
>         eieio-oref
>         proj-file expand-file-name file-exists-p proj-root-dirmatch nil
>         ede-project-autoload-dirmatch-p ede-dirmatch-installed
>         ede-do-dirmatch]
>         4 "Return non-nil if THIS project autoload is found in
>         DIR."]([eieio-class-tag--ede-project-autoload "Make" ede/proj
>         "Project.ede" nil nil unbound nil ede-proj-load ede-proj-project
>         nil t
>         nil] nil)
>             apply(#[(this dir)
>         "\306 ! \307\n\310\"\211 ;\205 \311 \"\211
>         \203!\f\205D\312\f!\202D\307\n\313\"\211 ;\203/\314\202C\315
>         !\205C
>         \205C\316
>         !\205C\317
>           \")+\207" [dir d this pf f dirmatch file-name-as-directory
>         eieio-oref
>         proj-file expand-file-name file-exists-p proj-root-dirmatch nil
>         ede-project-autoload-dirmatch-p ede-dirmatch-installed
>         ede-do-dirmatch]
>         4 "Return non-nil if THIS project autoload is found in DIR."]
>         [eieio-class-tag--ede-project-autoload "Make" ede/proj
>         "Project.ede" nil
>         nil unbound nil ede-proj-load ede-proj-project nil t nil] nil)
>
>           ede-auto-detect-in-dir([eieio-class-tag--ede-project-autoload
>         "Make"
>         ede/proj "Project.ede" nil nil unbound nil ede-proj-load
>         ede-proj-project nil t nil] nil)
>             ede--detect-ldf-root-predicate("~/")
>             locate-dominating-file("~/" ede--detect-ldf-root-predicate)
>             ede--detect-scan-directory-for-project-root("~/"
>         [eieio-class-tag--ede-project-autoload "Make" ede/proj
>         "Project.ede" nil
>         nil unbound nil ede-proj-load ede-proj-project nil t nil])
>             ede-detect-directory-for-project("/home/dumsani/")
>             ede-directory-project-cons("~/")
>             ede-initialize-state-current-buffer()
>             ede-reset-all-buffers()
>             global-ede-mode(t)
>             eval-buffer(#<buffer  *load*> nil
>         "/home/dumsani/.emacs.d/custom/setup-cedet.el" nil t)  ; Reading at
>         buffer position 512
>
>         load-with-code-conversion("/home/dumsani/.emacs.d/custom/setup-cedet.el"
>         "/home/dumsani/.emacs.d/custom/setup-cedet.el" nil t)
>             require(setup-cedet)
>             eval((require (quote setup-cedet)) nil)
>             elisp--eval-last-sexp(nil)
>             eval-last-sexp(nil)
>             funcall-interactively(eval-last-sexp nil)
>             call-interactively(eval-last-sexp nil nil)
>             command-execute(eval-last-sexp)
>
>         On Mon, Jan 4, 2016 at 2:05 AM, Eric Ludlam
>         <[email protected] <mailto:[email protected]>
>         <mailto:[email protected] <mailto:[email protected]>>>
>         wrote:
>
>              On 01/03/2016 01:54 PM, Dumsani Ndzinisa wrote:
>
>                  Hi,
>
>              [...]
>
>                  However, the process always fails when the line
>                  (global-ede-mode) gets
>                  executed in my
>                  init file. I am attaching my init file (~/.emacs) as
>         well as my
>                  customization file for setting
>                  up CEDET (as guided by one of the sources I mentioned
>         above).
>
>                  I'm using Emacs 25.1.5, installed from source (on GNU
>         Linux Mint,
>                  gcc/g++ 4.8, x86) after
>                  cloning the Emacs' git repo. There is a stock CEDET
>         installation
>                  coming
>                  with this version
>                  of Emacs, and according to my Emacs package manager (M-x
>                  cedet-version),
>                  the version
>                  of CEDET in  here is 2.0.
>
>
>              I tried your setup file w/ a fresh Emacs from git, and it
>         seemed to
>              load with no error for me.  Could you paste in what the error
>              message is? Your setup seems fine to me.
>
>              Thanks
>              Eric
>
>
>
>
>         --
>         Dumsani
>
>
>
>
> --
> Dumsani

------------------------------------------------------------------------------