[cfe-dev] Problems in __builtin_offsetof locations

Abramo Bagnara abramobagnara at tin.it
Wed Nov 4 08:04:08 PST 2009


Douglas Gregor ha scritto:
> 
> On Nov 4, 2009, at 1:07 AM, Abramo Bagnara wrote:
> 
>>
>> The attached C source show two different problems:
>>
>> $ llvm_new/Debug/bin/clang-cc -W -Wall bug_clang2.c
>> bug_clang2.c:11:7: error: too many arguments to function call
>>  fun(333);
>>  ~~~ ^~~
>> bug_clang2.c:12:7: error: too many arguments to function call
>>  fun(__builtin_offsetof(struct s, g));
>>  ~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> bug_clang2.c:13:7: error: too many arguments to function call
>>  fun(__builtin_offsetof(struct s, f));
>>  ~~~ ^
>> 3 diagnostics generated.
>>
>>
>> 1) As seen in diagnostic for line 12, the end location of
>> __builtin_offsetof is not the right paren but the end of location of
>> subexpression (like in all other prefix unary operators). This is wrong
>> for __builtin_offsetof.
>>
>> 2) Worse in diagnostic for line 13, the end location of
>> __builtin_offsetof is invalid (here I don't fully understand how this
>> happens).
> 
> In general, when you come across a bug like this, please file it in the
> LLVM Bugzilla at
> 
>     http://llvm.org/bugs/

I've already done that. Are you meaning that it was better to *only*
file it in the LLVM Bugzilla?

In general we prefer to send the info about the problem found here to
get some feedback about and then decide whether is better to submit
directly a patch (if we think to be able to do something that meet the
agreement of core developers) or to submit a bug report.

Is it the correct behaviour?




More information about the cfe-dev mailing list