Не удается найти ссылки, использующие 'semantic-symref-symbol' - PullRequest
0 голосов
/ 26 марта 2011

Я получаю сообщение No references found всякий раз, когда использую «semantic-symref-symbol» (Cc, g), пытаясь получить все ссылки на любой символ, независимо от того, является ли этот символ переменной класса C ++ или локальной переменной он просто не мог найти никакой ссылки. База данных gtag находится под моим корнем проекта. В моем файле .emacs у меня есть следующее:

(require 'semanticdb-global)
(semanticdb-enable-gnu-global-databases 'c-mode)
(semanticdb-enable-gnu-global-databases 'c++-mode)

Когда я набираю «глобальный символ -xs» в командной строке, он показывает все ссылки на символ правильно. Но почему семантика не могла ничего найти? С другой стороны, semantic-symref отлично работает при поиске ссылок на класс или функцию-член класса, но не работает для переменных.

Это просто ошибка, или я что-то упускаю из-за того, что ссылка на символ не работает?

1 Ответ

1 голос
/ 29 марта 2011

Эта проблема связана с тем, как GNU Global используется в Semantic, который появился в списке рассылки на днях. GNU Global позволяет вам найти вхождения тегов (с -r) или случайных символов (-s), а Semantic использует флаг -r, а указанные вами переменные не считаются тегами GNU Global.

В файле поддержки cedet-global.el для функции cedet-gnu-global-search было предложено использовать или добавлять флаг -s при поиске символа '. Однако я не знаю, какое разрешение будет в данный момент.

Вы можете увидеть всю ветку в списке рассылки cedet-devel:

http://sourceforge.net/mailarchive/forum.php?forum_name=cedet-devel&max_rows=25&style=ultimate&viewmonth=201103

...