Re: Interesting failures of 'cscope'

From: Martin J. Bligh
Date: Wed Aug 04 2004 - 18:48:13 EST


Various versions of cscope are buggy as hell, and I'm not at all sure the
recent ones are any better than older ones ... caveat user ;-)

Personally I use an old binary ripped off RH 6.2, which still seems to
work ... any current ones I've tried are broken.

M.

--On Wednesday, August 04, 2004 16:22:52 -0700 Carl Spalletta <cspalletta@xxxxxxxxx> wrote:

> FYI
>
> The first failure seems to be a confusion between function declarations and definitions -
> eg for linux-2.6.7, it says FsmNew() is called by drivers/isdn/hisax/fsm.h::CallcNew, thus:
>
> $cscope -d -p9 -L -3 FsmNew
> ...
> drivers/isdn/hisax/fsm.h CallcNew 50 int FsmNew(struct Fsm *fsm, struct FsmNode,*fnlist, int
> fncount);
> ...
>
> but there is no call there, only an external declaration of FsmNew, and no declaration of
> CallcNew of any kind whatsoever in that file!
>
>
> The second failure appears to be related to an inability to cope with complicated declarations
> within a prototype, such of those of type pointer-to-function. For example, the definition:
>
> struct net_device *alloc_netdev(int sizeof_priv, const char *mask,
> void (*setup)(struct net_device *))
>
> from line 73 of drivers/net/net_init.c, is not recognized by cscope as a valid function definition
> and so it does not find the call to kmalloc (or anything else) contained in that function.
>
> $ cscope -d -p9 -L -1 alloc_netdev
> <nothing>
> $ cscope -d -p9 -L -3 kmalloc | grep alloc_netdev
> <nothing>
>
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
>


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/