4

emacs24とそれに付属するバージョンのcedetでセマンティック補完を機能させようとしています。自分のソースファイルで定義したクラスでは完了は機能しますが、標準ライブラリやSTLのものでは完了が機能しません。これが私のemacs構成です。

(require 'cedet)
(require 'semantic)
(require 'semantic/ia)
(require 'semantic/bovine/gcc)
(semantic-add-system-include "/usr/include/c++/4.6.3" 'c++-mode)
(setq semantic-default-submodes
      '(global-semantic-idle-scheduler-mode
        global-semanticdb-minor-mode
        global-semantic-idle-summary-mode
        global-semantic-idle-completions-mode
        global-semantic-highlight-func-mode
        global-semantic-decoration-mode
        global-semantic-mru-bookmark-mode))
(setq semanticdb-default-save-directory "~/.semanticdb/"
  semantic-complete-inline-analyzer-idle-displayor-class 'semantic-displayor-ghost)
(semantic-mode t)

〜/ .semanticdbディレクトリには、「!usr!include!c ++!4.6!x86_64-linux-gnu!bits!semantic.cache」しか表示されません。これは、構成で指定したバージョンを使用していません。

たとえば、std :: listでMxセマンティック-analyze-possible-completionsを試してみると、「std::listの型が見つかりません」というエラーが表示されます。

これをデバッグする方法または修正する方法についての提案はありますか?

4

1 に答える 1