unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* I don't have C++ intellisense with company-mode
@ 2014-01-22 20:53 Jorge Araya Navarro
  2014-01-23  1:19 ` Dmitry Gutov
  0 siblings, 1 reply; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-22 20:53 UTC (permalink / raw)
  To: help-gnu-emacs

Hello! :D

I was looking for company-mode to provide intellisense on C++ since it
looked easy to install and configure. But I noticed that I got
intellisense for many programming languages except C++. I did many
screenshots showing that I have no intellisense in emacs[1] compared to
that screenshot taken by the author who actually have it[2] (note that
in his buffer says "company-semantic" and in my screenshots it just says
"company"). This is my Emacs configuration[3] that I used for the
screenshots. This is my .emacs file[4], my `require`s[5], my hooks[6],
and a .el file that loads all the configurations for different major
modes[7], including my company-mode configuration[8]. My emacs version
is `GNU Emacs 24.3.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.6) of
2014-01-18 on mnt-storage-buildroots-staging-x86_64-eric`

Thanks! :)

[1]: http://imgur.com/a/Ed7Wn#0
[2]: http://company-mode.github.io/images/company-semantic.png
[3]: https://bitbucket.org/shackra/emacs/src
[4]:
https://bitbucket.org/shackra/emacs/src/565e69a186449c0cc08dd2f2b6c83c22d591ac17/emacs.d/init.el?at=default
[5]:
https://bitbucket.org/shackra/emacs/src/565e69a186449c0cc08dd2f2b6c83c22d591ac17/emacs.d/requrs.el?at=default
[6]:
https://bitbucket.org/shackra/emacs/src/565e69a186449c0cc08dd2f2b6c83c22d591ac17/emacs.d/hooks.el?at=default
[7]:
https://bitbucket.org/shackra/emacs/src/565e69a186449c0cc08dd2f2b6c83c22d591ac17/emacs.d/varl.el?at=default
[8]:
https://bitbucket.org/shackra/emacs/src/565e69a186449c0cc08dd2f2b6c83c22d591ac17/emacs.d/conf-modes/company.el?at=default

-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-22 20:53 I don't have C++ intellisense with company-mode Jorge Araya Navarro
@ 2014-01-23  1:19 ` Dmitry Gutov
  2014-01-23  3:42   ` Jorge Araya Navarro
  0 siblings, 1 reply; 23+ messages in thread
From: Dmitry Gutov @ 2014-01-23  1:19 UTC (permalink / raw)
  To: Jorge Araya Navarro; +Cc: help-gnu-emacs

Hi Jorge,

Jorge Araya Navarro <elcorreo@deshackra.com> writes:

> I was looking for company-mode to provide intellisense on C++ since it
> looked easy to install and configure. But I noticed that I got
> intellisense for many programming languages except C++. I did many
> screenshots showing that I have no intellisense in emacs[1] compared to
> that screenshot taken by the author who actually have it[2] (note that
> in his buffer says "company-semantic" and in my screenshots it just says
> "company").

In order to use Semantic, you must have `semantic-mode' enabled. Company
won't set up CEDET for you.

For example, you can refer to this guide:
http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html
Or just `M-x semantic-mode' for a minimal configuration.

Another option is to install Clang, then, unless semantic-mode is
enabled, the company-clang backend will be used.



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-23  1:19 ` Dmitry Gutov
@ 2014-01-23  3:42   ` Jorge Araya Navarro
  2014-01-23 11:32     ` Dmitry Gutov
  2014-01-23 14:11     ` Stefan Monnier
  0 siblings, 2 replies; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-23  3:42 UTC (permalink / raw)
  To: Dmitry Gutov; +Cc: help-gnu-emacs

El jue, 23-01-2014 a las 03:19 +0200, Dmitry Gutov escribió:

> Hi Jorge,
> 
> Jorge Araya Navarro <elcorreo@deshackra.com> writes:
> 
> > I was looking for company-mode to provide intellisense on C++ since it
> > looked easy to install and configure. But I noticed that I got
> > intellisense for many programming languages except C++. I did many
> > screenshots showing that I have no intellisense in emacs[1] compared to
> > that screenshot taken by the author who actually have it[2] (note that
> > in his buffer says "company-semantic" and in my screenshots it just says
> > "company").
> 
> In order to use Semantic, you must have `semantic-mode' enabled. Company
> won't set up CEDET for you.
> 
> For example, you can refer to this guide:
> http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html
> Or just `M-x semantic-mode' for a minimal configuration.
> 
> Another option is to install Clang, then, unless semantic-mode is
> enabled, the company-clang backend will be used.


Hello, Dmitry!

I... well, I have already read that guide. But I tried again this time,
So I did these changes:

on my hooks.el file have no changes under the after-init-hook, which
starts semantic-mode.

On my conf-modes/cedet.el file I did these changes:


(add-to-list 'semantic-default-submodes 'global-semanticdb-minor-mode)
(add-to-list 'semantic-default-submodes 'global-semantic-highlight-func-mode)
(add-to-list 'semantic-default-submodes 'global-semantic-idle-scheduler-mode)
(add-to-list 'semantic-default-submodes 'global-semantic-idle-completions-mode)
(add-to-list 'semantic-default-submodes 'global-semantic-idle-summary-mode)

(when (cedet-cscope-version-check t)
  (semanticdb-enable-cscope-databases))


Of course I load them from my varl.el file:


(load-file "~/.emacs.d/conf-modes/emacs-behaivor.el")
(load-file "~/.emacs.d/conf-modes/localization.el")
;; ...
(load-file "~/.emacs.d/conf-modes/org-mode.el")
(load-file "~/.emacs.d/conf-modes/autoindent.el")
(load-file "~/.emacs.d/conf-modes/cedet.el") ;; This runs before (semantic-mode 1) is evaluated... Or thats what I think...
(load-file "~/.emacs.d/conf-modes/company.el")
(load-file "~/.emacs.d/conf-modes/auto-mode-alist.el")


That's all the changes I did, I swear! Then I restart my emacs, but this
error shows up:


Debugger entered--Lisp error: (void-function cedet-cscope-version-check)
  (cedet-cscope-version-check t)
  (if (cedet-cscope-version-check t) (progn (semanticdb-enable-cscope-databases)))
  eval-buffer(#<buffer  *load*-234444> nil "/home/jorge/.emacs.d/conf-modes/cedet.el" nil t)  ; Reading at buffer position 491
  load-with-code-conversion("/home/jorge/.emacs.d/conf-modes/cedet.el" "/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil)
  load("/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil t)
  load-file("~/.emacs.d/conf-modes/cedet.el")
  eval-buffer(#<buffer  *load*-219420> nil "/home/jorge/.emacs.d/varl.el" nil t)  ; Reading at buffer position 617
  load-with-code-conversion("/home/jorge/.emacs.d/varl.el" "/home/jorge/.emacs.d/varl.el" nil nil)
  load("/home/jorge/.emacs.d/varl.el" nil nil t)
  load-file("~/.emacs.d/varl.el")
  eval-buffer(#<buffer  *load*> nil "/home/jorge/.emacs.d/init.el" nil t)  ; Reading at buffer position 373
  load-with-code-conversion("/home/jorge/.emacs.d/init.el" "/home/jorge/.emacs.d/init.el" t t)
  load("/home/jorge/.emacs.d/init" t t)
  #[0 "\205\262 ...  [init-file-user system-type delayed-warnings-list user-init-file inhibit-default-init inhibit-startup-screen ms-dos "~" "/_emacs" windows-nt "/.emacs" directory-files nil "^\\.emacs\\(\\.elc?\\)?$" "~/.emacs" "^_emacs\\(\\.elc?\\)?$" (initialization "`_emacs' init file is deprecated, please use `.emacs'") "~/_emacs" t load expand-file-name "init" file-name-as-directory "/.emacs.d" file-name-extension "elc" file-name-sans-extension ".el" file-exists-p file-newer-than-file-p message "Warning: %s is newer than %s" sit-for 1 "default"] 7 "\n\n(fn)"]()


Looks like cedet-cscope-version-check dont have a function defined, I
wonder why because I have CEDET 2.0 shipped from Emacs and according to
the guide it should be evaluated like a function.
Any idea of what (why?) is happening here?
-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-23  3:42   ` Jorge Araya Navarro
@ 2014-01-23 11:32     ` Dmitry Gutov
  2014-01-23 19:15       ` Jorge Araya Navarro
  2014-01-23 14:11     ` Stefan Monnier
  1 sibling, 1 reply; 23+ messages in thread
From: Dmitry Gutov @ 2014-01-23 11:32 UTC (permalink / raw)
  To: elcorreo; +Cc: help-gnu-emacs

On 23.01.2014 05:42, Jorge Araya Navarro wrote:
> That's all the changes I did, I swear! Then I restart my emacs, but this
> error shows up:
>
> Debugger entered--Lisp error: (void-function cedet-cscope-version-check)
>    (cedet-cscope-version-check t)
>    (if (cedet-cscope-version-check t) (progn (semanticdb-enable-cscope-databases)))
>    eval-buffer(#<buffer  *load*-234444> nil "/home/jorge/.emacs.d/conf-modes/cedet.el" nil t)  ; Reading at buffer position 491
>    load-with-code-conversion("/home/jorge/.emacs.d/conf-modes/cedet.el" "/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil)
>    load("/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil t)
>    load-file("~/.emacs.d/conf-modes/cedet.el")
>    eval-buffer(#<buffer  *load*-219420> nil "/home/jorge/.emacs.d/varl.el" nil t)  ; Reading at buffer position 617
>    load-with-code-conversion("/home/jorge/.emacs.d/varl.el" "/home/jorge/.emacs.d/varl.el" nil nil)
>    load("/home/jorge/.emacs.d/varl.el" nil nil t)
>    load-file("~/.emacs.d/varl.el")
>    eval-buffer(#<buffer  *load*> nil "/home/jorge/.emacs.d/init.el" nil t)  ; Reading at buffer position 373
>    load-with-code-conversion("/home/jorge/.emacs.d/init.el" "/home/jorge/.emacs.d/init.el" t t)
>    load("/home/jorge/.emacs.d/init" t t)
>    #[0 "\205\262 ...  [init-file-user system-type delayed-warnings-list user-init-file inhibit-default-init inhibit-startup-screen ms-dos "~" "/_emacs" windows-nt "/.emacs" directory-files nil "^\\.emacs\\(\\.elc?\\)?$" "~/.emacs" "^_emacs\\(\\.elc?\\)?$" (initialization "`_emacs' init file is deprecated, please use `.emacs'") "~/_emacs" t load expand-file-name "init" file-name-as-directory "/.emacs.d" file-name-extension "elc" file-name-sans-extension ".el" file-exists-p file-newer-than-file-p message "Warning: %s is newer than %s" sit-for 1 "default"] 7 "\n\n(fn)"]()
>
>
> Looks like /cedet-cscope-version-check/ dont have a function defined, I
> wonder why because I have CEDET 2.0 shipped from Emacs and according to
> the guide it should be evaluated like a function.
> Any idea of what (why?) is happening here?

Sorry, I don't really use CEDET myself (or write C or C++ code in 
general), so hopefully someone else will chime in.

However, you don't need the CScope integration to test out how 
company-semantic works. You can comment that form out temporarily and 
try again.



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-23  3:42   ` Jorge Araya Navarro
  2014-01-23 11:32     ` Dmitry Gutov
@ 2014-01-23 14:11     ` Stefan Monnier
  2014-01-23 19:07       ` Jorge Araya Navarro
  1 sibling, 1 reply; 23+ messages in thread
From: Stefan Monnier @ 2014-01-23 14:11 UTC (permalink / raw)
  To: help-gnu-emacs

> On my conf-modes/cedet.el file I did these changes:

> (add-to-list 'semantic-default-submodes 'global-semanticdb-minor-mode)
> (add-to-list 'semantic-default-submodes 'global-semantic-highlight-func-mode)
> (add-to-list 'semantic-default-submodes 'global-semantic-idle-scheduler-mode)
> (add-to-list 'semantic-default-submodes 'global-semantic-idle-completions-mode)
> (add-to-list 'semantic-default-submodes 'global-semantic-idle-summary-mode)

> (when (cedet-cscope-version-check t)
>   (semanticdb-enable-cscope-databases))

You use cedet-cscope-version-check without loading cedet, hence the
error: the function is not yet defined.


        Stefan




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-23 14:11     ` Stefan Monnier
@ 2014-01-23 19:07       ` Jorge Araya Navarro
  2014-01-23 19:17         ` Dmitry Gutov
  0 siblings, 1 reply; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-23 19:07 UTC (permalink / raw)
  To: help-gnu-emacs

El jue, 23-01-2014 a las 09:11 -0500, Stefan Monnier escribió:

> > On my conf-modes/cedet.el file I did these changes:
> 
> > (add-to-list 'semantic-default-submodes 'global-semanticdb-minor-mode)
> > (add-to-list 'semantic-default-submodes 'global-semantic-highlight-func-mode)
> > (add-to-list 'semantic-default-submodes 'global-semantic-idle-scheduler-mode)
> > (add-to-list 'semantic-default-submodes 'global-semantic-idle-completions-mode)
> > (add-to-list 'semantic-default-submodes 'global-semantic-idle-summary-mode)
> 
> > (when (cedet-cscope-version-check t)
> >   (semanticdb-enable-cscope-databases))
> 
> You use cedet-cscope-version-check without loading cedet, hence the
> error: the function is not yet defined.
> 
> 
>         Stefan
> 
> 


I added (require 'cedet) to load before loading my cedet.el file and
then tried again, same error :(.
-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-23 11:32     ` Dmitry Gutov
@ 2014-01-23 19:15       ` Jorge Araya Navarro
  2014-01-23 19:58         ` Dmitry Gutov
  0 siblings, 1 reply; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-23 19:15 UTC (permalink / raw)
  To: help-gnu-emacs

El jue, 23-01-2014 a las 13:32 +0200, Dmitry Gutov escribió:

> On 23.01.2014 05:42, Jorge Araya Navarro wrote:
> > That's all the changes I did, I swear! Then I restart my emacs, but this
> > error shows up:
> >
> > Debugger entered--Lisp error: (void-function cedet-cscope-version-check)
> >    (cedet-cscope-version-check t)
> >    (if (cedet-cscope-version-check t) (progn (semanticdb-enable-cscope-databases)))
> >    eval-buffer(#<buffer  *load*-234444> nil "/home/jorge/.emacs.d/conf-modes/cedet.el" nil t)  ; Reading at buffer position 491
> >    load-with-code-conversion("/home/jorge/.emacs.d/conf-modes/cedet.el" "/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil)
> >    load("/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil t)
> >    load-file("~/.emacs.d/conf-modes/cedet.el")
> >    eval-buffer(#<buffer  *load*-219420> nil "/home/jorge/.emacs.d/varl.el" nil t)  ; Reading at buffer position 617
> >    load-with-code-conversion("/home/jorge/.emacs.d/varl.el" "/home/jorge/.emacs.d/varl.el" nil nil)
> >    load("/home/jorge/.emacs.d/varl.el" nil nil t)
> >    load-file("~/.emacs.d/varl.el")
> >    eval-buffer(#<buffer  *load*> nil "/home/jorge/.emacs.d/init.el" nil t)  ; Reading at buffer position 373
> >    load-with-code-conversion("/home/jorge/.emacs.d/init.el" "/home/jorge/.emacs.d/init.el" t t)
> >    load("/home/jorge/.emacs.d/init" t t)
> >    #[0 "\205\262 ...  [init-file-user system-type delayed-warnings-list user-init-file inhibit-default-init inhibit-startup-screen ms-dos "~" "/_emacs" windows-nt "/.emacs" directory-files nil "^\\.emacs\\(\\.elc?\\)?$" "~/.emacs" "^_emacs\\(\\.elc?\\)?$" (initialization "`_emacs' init file is deprecated, please use `.emacs'") "~/_emacs" t load expand-file-name "init" file-name-as-directory "/.emacs.d" file-name-extension "elc" file-name-sans-extension ".el" file-exists-p file-newer-than-file-p message "Warning: %s is newer than %s" sit-for 1 "default"] 7 "\n\n(fn)"]()
> >
> >
> > Looks like /cedet-cscope-version-check/ dont have a function defined, I
> > wonder why because I have CEDET 2.0 shipped from Emacs and according to
> > the guide it should be evaluated like a function.
> > Any idea of what (why?) is happening here?
> 
> Sorry, I don't really use CEDET myself (or write C or C++ code in 
> general), so hopefully someone else will chime in.
> 
> However, you don't need the CScope integration to test out how 
> company-semantic works. You can comment that form out temporarily and 
> try again.
> 


I commented out those lines, tried again, but it doesn't works[0] :'(


[0]: http://imgur.com/a/Ed7Wn#3
-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-23 19:07       ` Jorge Araya Navarro
@ 2014-01-23 19:17         ` Dmitry Gutov
  0 siblings, 0 replies; 23+ messages in thread
From: Dmitry Gutov @ 2014-01-23 19:17 UTC (permalink / raw)
  To: Jorge Araya Navarro; +Cc: help-gnu-emacs

Jorge Araya Navarro <elcorreo@deshackra.com> writes:

> I added (require 'cedet) to load before loading my cedet.el file and
> then tried again, same error :(.

Try (require 'cedet-cscope).



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-23 19:15       ` Jorge Araya Navarro
@ 2014-01-23 19:58         ` Dmitry Gutov
  2014-01-24  5:22           ` Jorge Araya Navarro
  0 siblings, 1 reply; 23+ messages in thread
From: Dmitry Gutov @ 2014-01-23 19:58 UTC (permalink / raw)
  To: Jorge Araya Navarro; +Cc: help-gnu-emacs

Jorge Araya Navarro <elcorreo@deshackra.com> writes:

> I commented out those lines, tried again, but it doesn't works[0] :'(
>
>
> [0]: http://imgur.com/a/Ed7Wn#3

Don't know what's the problem here: I've tried your cedet.el and a small
sample C++ file, and it worked fine (with the latest Emacs, built from
trunk).

You might want to comment this out, though:

(add-to-list 'semantic-default-submodes 'global-semantic-idle-completions-mode)

This kind of mode seems to duplicate the functionality of Company.

If you don't manage to make it work yourself, try reproducing the
problem with a small C++ file and then uploading it here, or, better
yet, filing a CEDET bug report (or doing both). The latter option would
be most appropriate if you see company-semantic working with some C++
files, but failing on certain others.

Also, try the very latest Emacs build you can find (build from trunk, if
you can).



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-23 19:58         ` Dmitry Gutov
@ 2014-01-24  5:22           ` Jorge Araya Navarro
  2014-01-24  7:06             ` 贺新超 
  2014-01-24 11:06             ` Dmitry Gutov
  0 siblings, 2 replies; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-24  5:22 UTC (permalink / raw)
  To: help-gnu-emacs


El jue, 23-01-2014 a las 21:58 +0200, Dmitry Gutov escribió: 

> Jorge Araya Navarro <elcorreo@deshackra.com> writes:
> 
> > I commented out those lines, tried again, but it doesn't works[0] :'(
> >
> >
> > [0]: http://imgur.com/a/Ed7Wn#3
> 
> Don't know what's the problem here: I've tried your cedet.el and a small
> sample C++ file, and it worked fine (with the latest Emacs, built from
> trunk).
> 
> You might want to comment this out, though:
> 
> (add-to-list 'semantic-default-submodes 'global-semantic-idle-completions-mode)
> 
> This kind of mode seems to duplicate the functionality of Company.
> 
> If you don't manage to make it work yourself, try reproducing the
> problem with a small C++ file and then uploading it here, or, better
> yet, filing a CEDET bug report (or doing both). The latter option would
> be most appropriate if you see company-semantic working with some C++
> files, but failing on certain others.
> 
> Also, try the very latest Emacs build you can find (build from trunk, if
> you can).
> 



I added (require 'cedet-cscope) and the error just appeared one level
below:


Debugger entered--Lisp error: (void-function semanticdb-enable-cscope-databases)
  (semanticdb-enable-cscope-databases)
  (progn (semanticdb-enable-cscope-databases))
  (if (cedet-cscope-version-check t) (progn (semanticdb-enable-cscope-databases)))
  eval-buffer(#<buffer  *load*-326197> nil "/home/jorge/.emacs.d/conf-modes/cedet.el" nil t)  ; Reading at buffer position 411
  load-with-code-conversion("/home/jorge/.emacs.d/conf-modes/cedet.el" "/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil)
  load("/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil t)
  load-file("~/.emacs.d/conf-modes/cedet.el")
  eval-buffer(#<buffer  *load*-390467> nil "/home/jorge/.emacs.d/varl.el" nil t)  ; Reading at buffer position 617
  load-with-code-conversion("/home/jorge/.emacs.d/varl.el" "/home/jorge/.emacs.d/varl.el" nil nil)
  load("/home/jorge/.emacs.d/varl.el" nil nil t)
  load-file("~/.emacs.d/varl.el")
  eval-buffer(#<buffer  *load*> nil "/home/jorge/.emacs.d/init.el" nil t)  ; Reading at buffer position 373
  load-with-code-conversion("/home/jorge/.emacs.d/init.el" "/home/jorge/.emacs.d/init.el" t t)
  load("/home/jorge/.emacs.d/init" t t)


that's some progress at least... I commented those lines and tried
again, created a helloworld.cpp file that looks like this:


#include <iostream>

struct test
{
  int foo;
  int foobar;
  int bar;
  char ch;
};

int main(int argc, char *argv[])
{
  test teststruct;
  teststruct.foo = 10;
  return 0;
}


but, nothing, just more errors[1] :(. company-semantic doesn't work with
any C++ file! :'(
I then compiled Emacs from its repository as you suggested (version
echoes: GNU Emacs 24.3.50.1 (x86_64-unknown-linux-gnu, GTK+ Version
3.10.6) of 2014-01-23 on abril ) and tried again, the same:


Idle Service Error semantic-idle-summary-idle-function: "#<buffer helloworld.cpp> - Wrong type argument: stringp, ((\"__THROW\" 0 nil nil))"


I think that I'm doing a bug report for this issue (to the CEDET
developers I guess?) :(

[1]: http://imgur.com/a/Ed7Wn#4

-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.

-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24  5:22           ` Jorge Araya Navarro
@ 2014-01-24  7:06             ` 贺新超 
  2014-01-24  7:46               ` Jorge Araya Navarro
  2014-01-24 11:06             ` Dmitry Gutov
  1 sibling, 1 reply; 23+ messages in thread
From: 贺新超  @ 2014-01-24  7:06 UTC (permalink / raw)
  To: elcorreo; +Cc: help-gnu-emacs

Which version CEDET do you use? If it's the *develop* version, you'd load
it like
this:

--8<---------------cut here---------------start------------->8---
(load-file "~/.emacs.d/cedet/cedet-devel-load.el")
(require 'cedet-cscope)
--8<---------------cut here---------------end--------------->8---


On Fri, Jan 24, 2014 at 1:22 PM, Jorge Araya Navarro <elcorreo@deshackra.com
> wrote:

>
> I added (require 'cedet-cscope) and the error just appeared one level
> below:
>
>
> Debugger entered--Lisp error: (void-function
> semanticdb-enable-cscope-databases)
>   (semanticdb-enable-cscope-databases)
>   (progn (semanticdb-enable-cscope-databases))
>   (if (cedet-cscope-version-check t) (progn
> (semanticdb-enable-cscope-databases)))
>   eval-buffer(#<buffer  *load*-326197> nil
> "/home/jorge/.emacs.d/conf-modes/cedet.el" nil t)  ; Reading at buffer
> position 411
>   load-with-code-conversion("/home/jorge/.emacs.d/conf-modes/cedet.el"
> "/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil)
>   load("/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil t)
>   load-file("~/.emacs.d/conf-modes/cedet.el")
>   eval-buffer(#<buffer  *load*-390467> nil "/home/jorge/.emacs.d/varl.el"
> nil t)  ; Reading at buffer position 617
>   load-with-code-conversion("/home/jorge/.emacs.d/varl.el"
> "/home/jorge/.emacs.d/varl.el" nil nil)
>   load("/home/jorge/.emacs.d/varl.el" nil nil t)
>   load-file("~/.emacs.d/varl.el")
>   eval-buffer(#<buffer  *load*> nil "/home/jorge/.emacs.d/init.el" nil t)
>  ; Reading at buffer position 373
>   load-with-code-conversion("/home/jorge/.emacs.d/init.el"
> "/home/jorge/.emacs.d/init.el" t t)
>   load("/home/jorge/.emacs.d/init" t t
> --
> Pax et bonum.
> Jorge Araya Navarro.
> Diseñador publicitario, programador Python/C++ y colaborador en Parabola
> GNU/Linux-libre.
>


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24  7:06             ` 贺新超 
@ 2014-01-24  7:46               ` Jorge Araya Navarro
  2014-01-24 17:05                 ` David Engster
  0 siblings, 1 reply; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-24  7:46 UTC (permalink / raw)
  To: 贺新超; +Cc: help-gnu-emacs

El vie, 24-01-2014 a las 15:06 +0800, 贺新超 escribió:
> Which version CEDET do you use? If it's the *develop* version, you'd
> load it like
> this:
> 
> --8<---------------cut here---------------start------------->8---
> (load-file "~/.emacs.d/cedet/cedet-devel-load.el")
> (require 'cedet-cscope)
> --8<---------------cut here---------------end--------------->8---
> 
> 
> 
> 
> On Fri, Jan 24, 2014 at 1:22 PM, Jorge Araya Navarro
> <elcorreo@deshackra.com> wrote:
> 
>         
>         I added (require 'cedet-cscope) and the error just appeared
>         one level
>         below:
>         
>         
>         Debugger entered--Lisp error: (void-function
>         semanticdb-enable-cscope-databases)
>           (semanticdb-enable-cscope-databases)
>           (progn (semanticdb-enable-cscope-databases))
>         
>           (if (cedet-cscope-version-check t) (progn
>         (semanticdb-enable-cscope-databases)))
>         
>         
>           eval-buffer(#<buffer  *load*-326197> nil
>         "/home/jorge/.emacs.d/conf-modes/cedet.el" nil t)  ; Reading
>         at buffer position 411
>         
>         
>         load-with-code-conversion("/home/jorge/.emacs.d/conf-modes/cedet.el" "/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil)
>           load("/home/jorge/.emacs.d/conf-modes/cedet.el" nil nil t)
>           load-file("~/.emacs.d/conf-modes/cedet.el")
>         
>         
>           eval-buffer(#<buffer  *load*-390467> nil
>         "/home/jorge/.emacs.d/varl.el" nil t)  ; Reading at buffer
>         position 617
>         
>           load-with-code-conversion("/home/jorge/.emacs.d/varl.el"
>         "/home/jorge/.emacs.d/varl.el" nil nil)
>           load("/home/jorge/.emacs.d/varl.el" nil nil t)
>           load-file("~/.emacs.d/varl.el")
>           eval-buffer(#<buffer  *load*> nil
>         "/home/jorge/.emacs.d/init.el" nil t)  ; Reading at buffer
>         position 373
>           load-with-code-conversion("/home/jorge/.emacs.d/init.el"
>         "/home/jorge/.emacs.d/init.el" t t)
>           load("/home/jorge/.emacs.d/init" t t
>         --
>         Pax et bonum.
>         Jorge Araya Navarro.
>         Diseñador publicitario, programador Python/C++ y colaborador
>         en Parabola
>         GNU/Linux-libre.
>         
> 
> 
> 

I was using the CEDET that is shipped with my emacs, but I took the
CEDET snapshot from their development repository and started making some
tests, and I got some critical errors here. But I notified the
developers and now I'm waiting to get help from them!. Also this
stackoverflow answer[1] is very insightful (maybe I should tried that
too).

[1]: http://stackoverflow.com/a/20775272/2020214

-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24  5:22           ` Jorge Araya Navarro
  2014-01-24  7:06             ` 贺新超 
@ 2014-01-24 11:06             ` Dmitry Gutov
  2014-01-24 18:02               ` Jorge Araya Navarro
  1 sibling, 1 reply; 23+ messages in thread
From: Dmitry Gutov @ 2014-01-24 11:06 UTC (permalink / raw)
  To: Jorge Araya Navarro; +Cc: help-gnu-emacs

Jorge Araya Navarro <elcorreo@deshackra.com> writes:

> I added (require 'cedet-cscope) and the error just appeared one level
> below:
>
>
> Debugger entered--Lisp error: (void-function semanticdb-enable-cscope-databases)
>   (semanticdb-enable-cscope-databases)
>   (progn (semanticdb-enable-cscope-databases))

Not sure what's going on here. Looks like this function is not included
in CEDET that comes bundled with Emacs. At least, there's no
semantic/db-cscope here.

> that's some progress at least... I commented those lines and tried
> again, created a helloworld.cpp file that looks like this:
>
>
> #include <iostream>
>
> struct test
> {
>   int foo;
>   int foobar;
>   int bar;
>   char ch;
> };
>
> int main(int argc, char *argv[])
> {
>   test teststruct;
>   teststruct.foo = 10;
>   return 0;
> }

I've tried it, and it works for me.

> Idle Service Error semantic-idle-summary-idle-function: "#<buffer helloworld.cpp> - Wrong type argument: stringp, ((\"__THROW\" 0 nil nil))"

This already is an error inrelated to Company, so you can safely try to
report it. But to be sure, you should first disable Company and then
maybe enable semantic-idle-completions-mode (the one I suggested you
disable earlier). That way, you'll only be using the code from CEDET.

> I think that I'm doing a bug report for this issue (to the CEDET
> developers I guess?) :(

I've noticed you reported an error with eieio-object-name-string. That
looks new.



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24  7:46               ` Jorge Araya Navarro
@ 2014-01-24 17:05                 ` David Engster
  2014-01-24 17:24                   ` Dmitry Gutov
  2014-01-24 18:07                   ` Jorge Araya Navarro
  0 siblings, 2 replies; 23+ messages in thread
From: David Engster @ 2014-01-24 17:05 UTC (permalink / raw)
  To: help-gnu-emacs

Jorge Araya Navarro writes:
> But I notified the developers and now I'm waiting to get help from
> them!.

You did? Where?

-David




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24 17:05                 ` David Engster
@ 2014-01-24 17:24                   ` Dmitry Gutov
  2014-01-25  0:08                     ` Jorge Araya Navarro
  2014-01-24 18:07                   ` Jorge Araya Navarro
  1 sibling, 1 reply; 23+ messages in thread
From: Dmitry Gutov @ 2014-01-24 17:24 UTC (permalink / raw)
  To: help-gnu-emacs

David Engster <deng@randomsample.de> writes:

> Jorge Araya Navarro writes:
>> But I notified the developers and now I'm waiting to get help from
>> them!.
>
> You did? Where?

On cedet-eieio, apparently.



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24 11:06             ` Dmitry Gutov
@ 2014-01-24 18:02               ` Jorge Araya Navarro
  0 siblings, 0 replies; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-24 18:02 UTC (permalink / raw)
  To: help-gnu-emacs

El vie, 24-01-2014 a las 13:06 +0200, Dmitry Gutov escribió:

> Jorge Araya Navarro <elcorreo@deshackra.com> writes:
> 
> > I added (require 'cedet-cscope) and the error just appeared one level
> > below:
> >
> >
> > Debugger entered--Lisp error: (void-function semanticdb-enable-cscope-databases)
> >   (semanticdb-enable-cscope-databases)
> >   (progn (semanticdb-enable-cscope-databases))
> 
> Not sure what's going on here. Looks like this function is not included
> in CEDET that comes bundled with Emacs. At least, there's no
> semantic/db-cscope here.


according to this[1] your assumption is correct!

[1]: http://stackoverflow.com/a/20775272/2020214
-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24 17:05                 ` David Engster
  2014-01-24 17:24                   ` Dmitry Gutov
@ 2014-01-24 18:07                   ` Jorge Araya Navarro
  2014-01-24 19:20                     ` David Engster
  1 sibling, 1 reply; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-24 18:07 UTC (permalink / raw)
  To: help-gnu-emacs

El vie, 24-01-2014 a las 18:05 +0100, David Engster escribió:

> Jorge Araya Navarro writes:
> > But I notified the developers and now I'm waiting to get help from
> > them!.
> 
> You did? Where?
> 
> -David
> 
> 

Right here![1] 

[1]:
http://sourceforge.net/mailarchive/forum.php?thread_name=1390548624.17933.9.camel%40localhost.localdomain&forum_name=cedet-eieio
-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24 18:07                   ` Jorge Araya Navarro
@ 2014-01-24 19:20                     ` David Engster
  0 siblings, 0 replies; 23+ messages in thread
From: David Engster @ 2014-01-24 19:20 UTC (permalink / raw)
  To: help-gnu-emacs

Jorge Araya Navarro writes:
> El vie, 24-01-2014 a las 18:05 +0100, David Engster escribió:
>> You did? Where?
>
> Right here![1] 
>
> [1]:
> http://sourceforge.net/mailarchive/forum.php?thread_name=1390548624.17933.9.camel%40localhost.localdomain&forum_name=cedet-eieio

Indeed. Turns out I never subscribed to that list, since everyone was
using the CEDET or Semantic list...

I'll take a look.

-David




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-24 17:24                   ` Dmitry Gutov
@ 2014-01-25  0:08                     ` Jorge Araya Navarro
  2014-01-25  5:27                       ` Dmitry Gutov
  0 siblings, 1 reply; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-25  0:08 UTC (permalink / raw)
  To: help-gnu-emacs

El vie, 24-01-2014 a las 19:24 +0200, Dmitry Gutov escribió:

> David Engster <deng@randomsample.de> writes:
> 
> > Jorge Araya Navarro writes:
> >> But I notified the developers and now I'm waiting to get help from
> >> them!.
> >
> > You did? Where?
> 
> On cedet-eieio, apparently.
> 


I manage to make my configuration load without any issue!!
My "Symbol's function definition is void: eieio-object-name-string"
issue was happening because of this line of code on my .emacs.d/init.el
file:


;; programas elisp que no estan en elpa
(let ((default-directory "~/.emacs.d/otros/"))
      (normal-top-level-add-subdirs-to-load-path))


my cedet snapshot was sitting on ~/.emacs.d/otros/, but I don't fully
know the correlation between my lines of elisp and this issue. This
happens because you don't know what are you doing, do not follow my
example and study elisp, kids :)

Well, I still have that error from company:


Idle Service Error semantic-idle-summary-idle-function: "#<buffer helloworld.cpp> - Wrong type argument: stringp, ((\"__THROW\" 0 nil nil))"


But I'm glad to have done a lot of progress! :)

-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-25  0:08                     ` Jorge Araya Navarro
@ 2014-01-25  5:27                       ` Dmitry Gutov
  2014-01-25  5:41                         ` Jorge Araya Navarro
  0 siblings, 1 reply; 23+ messages in thread
From: Dmitry Gutov @ 2014-01-25  5:27 UTC (permalink / raw)
  To: Jorge Araya Navarro; +Cc: help-gnu-emacs

Jorge Araya Navarro <elcorreo@deshackra.com> writes:

> I manage to make my configuration load without any issue!!
> My "Symbol's function definition is void: eieio-object-name-string"
> issue was happening because of this line of code on my .emacs.d/init.el
> file:
>
>
> ;; programas elisp que no estan en elpa
> (let ((default-directory "~/.emacs.d/otros/"))
>       (normal-top-level-add-subdirs-to-load-path))

Yeah, that doesn't look good.

> Well, I still have that error from company:
>
>
> Idle Service Error semantic-idle-summary-idle-function: "#<buffer helloworld.cpp> - Wrong type argument: stringp, ((\"__THROW\" 0 nil nil))"

Why do you think it's from Company? "Idle Service Error" looks like
something Semantic would print (it has a bunch of "idle" modes you
enable in your config). If it were a bug in Company, it would print
something like this to Messages:

Company: Front-end company-echo-metadata-frontend error "Wrong type argument: characterp, (("__THROW" nil nil))" on command post-command

So yeah, feel free to report the above error, too.



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-25  5:27                       ` Dmitry Gutov
@ 2014-01-25  5:41                         ` Jorge Araya Navarro
  2014-01-25  7:48                           ` Dmitry Gutov
  2014-01-25  8:35                           ` David Engster
  0 siblings, 2 replies; 23+ messages in thread
From: Jorge Araya Navarro @ 2014-01-25  5:41 UTC (permalink / raw)
  To: help-gnu-emacs

El sáb, 25-01-2014 a las 07:27 +0200, Dmitry Gutov escribió:

> Jorge Araya Navarro <elcorreo@deshackra.com> writes:
> 
> > I manage to make my configuration load without any issue!!
> > My "Symbol's function definition is void: eieio-object-name-string"
> > issue was happening because of this line of code on my .emacs.d/init.el
> > file:
> >
> >
> > ;; programas elisp que no estan en elpa
> > (let ((default-directory "~/.emacs.d/otros/"))
> >       (normal-top-level-add-subdirs-to-load-path))
> 
> Yeah, that doesn't look good.
> 
> > Well, I still have that error from company:
> >
> >
> > Idle Service Error semantic-idle-summary-idle-function: "#<buffer helloworld.cpp> - Wrong type argument: stringp, ((\"__THROW\" 0 nil nil))"
> 
> Why do you think it's from Company? "Idle Service Error" looks like
> something Semantic would print (it has a bunch of "idle" modes you
> enable in your config). If it were a bug in Company, it would print
> something like this to Messages:
> 
> Company: Front-end company-echo-metadata-frontend error "Wrong type argument: characterp, (("__THROW" nil nil))" on command post-command
> 
> So yeah, feel free to report the above error, too.
> 


It is fixed, Dmitry!!! Thank God for your support! :D

I just deleted all the data under ~/.emacs.d/semanticdb (which is the
cache for all the parsed data, that was corrupt I guess) and now I
intellisense on Emacs[1], yay!
The clue was this stackoverflow answer[2] :)

Thanks for everything, now I can happily code again!

[1]: http://imgur.com/a/Ed7Wn#5
[2]: http://stackoverflow.com/a/13233218/2020214

-- 
Pax et bonum.
Jorge Araya Navarro.
Diseñador publicitario, programador Python/C++ y colaborador en Parabola
GNU/Linux-libre.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-25  5:41                         ` Jorge Araya Navarro
@ 2014-01-25  7:48                           ` Dmitry Gutov
  2014-01-25  8:35                           ` David Engster
  1 sibling, 0 replies; 23+ messages in thread
From: Dmitry Gutov @ 2014-01-25  7:48 UTC (permalink / raw)
  To: Jorge Araya Navarro; +Cc: help-gnu-emacs

Jorge Araya Navarro <elcorreo@deshackra.com> writes:

> It is fixed, Dmitry!!! Thank God for your support! :D

No problem, it seems I wasn't too helpful anyway.

> I just deleted all the data under ~/.emacs.d/semanticdb (which is the
> cache for all the parsed data, that was corrupt I guess) and now I
> intellisense on Emacs[1], yay!

Good. :)

But note that http://imgur.com/a/Ed7Wn#5 shows
semantic-idle-completions-mode working, not Company.



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: I don't have C++ intellisense with company-mode
  2014-01-25  5:41                         ` Jorge Araya Navarro
  2014-01-25  7:48                           ` Dmitry Gutov
@ 2014-01-25  8:35                           ` David Engster
  1 sibling, 0 replies; 23+ messages in thread
From: David Engster @ 2014-01-25  8:35 UTC (permalink / raw)
  To: help-gnu-emacs

Jorge Araya Navarro writes:
> I just deleted all the data under ~/.emacs.d/semanticdb (which is the
> cache for all the parsed data, that was corrupt I guess) and now I
> intellisense on Emacs[1], yay!

The problem with __THROW was an old bug in Semantic. When you deleted
the cache data, it re-parsed the buffers and so the error vanished.

It is always a good idea to delete the cache when upgrading Semantic (we
should have some way to automate that, though).

-David




^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2014-01-25  8:35 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-22 20:53 I don't have C++ intellisense with company-mode Jorge Araya Navarro
2014-01-23  1:19 ` Dmitry Gutov
2014-01-23  3:42   ` Jorge Araya Navarro
2014-01-23 11:32     ` Dmitry Gutov
2014-01-23 19:15       ` Jorge Araya Navarro
2014-01-23 19:58         ` Dmitry Gutov
2014-01-24  5:22           ` Jorge Araya Navarro
2014-01-24  7:06             ` 贺新超 
2014-01-24  7:46               ` Jorge Araya Navarro
2014-01-24 17:05                 ` David Engster
2014-01-24 17:24                   ` Dmitry Gutov
2014-01-25  0:08                     ` Jorge Araya Navarro
2014-01-25  5:27                       ` Dmitry Gutov
2014-01-25  5:41                         ` Jorge Araya Navarro
2014-01-25  7:48                           ` Dmitry Gutov
2014-01-25  8:35                           ` David Engster
2014-01-24 18:07                   ` Jorge Araya Navarro
2014-01-24 19:20                     ` David Engster
2014-01-24 11:06             ` Dmitry Gutov
2014-01-24 18:02               ` Jorge Araya Navarro
2014-01-23 14:11     ` Stefan Monnier
2014-01-23 19:07       ` Jorge Araya Navarro
2014-01-23 19:17         ` Dmitry Gutov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).