[cfe-dev] Problems in __builtin_offsetof locations
Douglas Gregor
dgregor at apple.com
Wed Nov 4 07:52:46 PST 2009
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/
- Doug
More information about the cfe-dev
mailing list