Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

bug#14455: 24.3.50; semantic-symref + cscope is problematic

0 views
Skip to first unread message

Jambunathan K

unread,
May 23, 2013, 3:12:59 PM5/23/13
to 14...@debbugs.gnu.org


STEP 1: Create cscope xref
======

$ cd ~/src/emacs/trunk/src (This is a Bzr checkout)
$ find . -name '*.[ch]' > cscope.files
$ cscope -b

$ ls -al cscope.*
-rw-r--r-- 1 kjambunathan kjambunathan 2159 May 24 00:20 cscope.files
-rw-r--r-- 1 kjambunathan kjambunathan 8346136 May 24 00:20 cscope.out

STEP 2: Enable semantic
======

emacs -Q

Tools->Source code parsers(Semantic)->ON

STEP 3: Visit some C file in Emacs src. Make sure cscope is used as symref tool
======

C-x C-f ~/src/emacs/trunk/src/buffer.c

STEP 4: Lookup definition of `set_interval_object'
======

C-c , J

The above command would have loaded symref tool. Make sure cscope
(and not grep) is the one that is used.

M-: (semantic-symref-calculate-rootdir)
=> "/home/kjambunathan/src/emacs/trunk/src/"

M-: (semantic-symref-detect-symref-tool)
=> cscope

STEP 5: Position the cursor over `INTERVAL' in it's signature
======

static void
set_interval_object (INTERVAL i, Lisp_Object obj)
^
|
|
C-c , J


STEP 6: Expected Behaviour
======

I expect that 'INTTERVAL' be offered at the prompt. Note the bug. `INTERVAL' is a symbol right.

Just type INTERVAL out. Now semantic refuses to proceed ahead saying no match.


STEP 7: Check that the native cscope looks up INTERVAL just fine.
=====

$ cscope
$ C-n (Cursor should be in Find this global definition)
$ Type out INTERVAL

cscope will take you to lisp.h with cursor at

typedef struct interval *INTERVAL;


STEP 8: Can semantic do the right thing when I lookup INTERVAL?
======


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


In GNU Emacs 24.3.50.1 (i686-pc-linux-gnu, GTK+ Version 2.20.1)
of 2013-05-20 on debian-6.05
Bzr revision: 112643 mitu...@math.s.chiba-u.ac.jp-20130520031520-pq1c1qjertan94kq
Windowing system distributor `The X.Org Foundation', version 11.0.10707000
Important settings:
value of $LANG: en_IN
locale-coding-system: iso-latin-1-unix
default enable-multibyte-characters: t




0 new messages