bug-global
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Some #define .... in C not recognised as definition


From: Shigio YAMAGUCHI
Subject: Re: Some #define .... in C not recognised as definition
Date: Mon, 24 Feb 2014 18:35:27 +0900

The cause of the problem is the line 299.

299: _ET_DECLARE_CHECKED(Uint,header_arity,Eterm)

The C parser in GLOBAL cannot treat a pattern like 'XXXX(YYYY)'
in outside of a function well, because it seems to be a function definition.

Work around is here. Please also refer to the Q2 in 'FAQ' file in GLOBAL package.

$ echo _ET_DECLARE_CHECKED >.notfunction
$ gtags
$ global -f erl_term.h
...
is_arity_value    311 erl_term.h       #define is_arity_value(x)        (((x) & _TAG_HEADER_MASK) == _TAG_HEADER_ARITYVAL)
is_sane_arity_value  312 erl_term.h       #define is_sane_arity_value(x)        ((((x) & _TAG_HEADER_MASK) == _TAG_HEADER_ARITYVAL) && \



2014-02-24 17:46 GMT+09:00 Leo Liu <address@hidden>:
On 2014-02-24 16:29 +0800, Shigio YAMAGUCHI wrote:
> Hi,
> It seems odd.
> If possible, would you please post the file in this list?
>
> The reason is like follows:
> [http://www.gnu.org/software/global/maillist.html]



Leo




--
Shigio YAMAGUCHI <address@hidden>
PGP fingerprint: D1CB 0B89 B346 4AB6 5663  C4B6 3CA5 BBB3 57BE DDA3

reply via email to

[Prev in Thread] Current Thread [Next in Thread]