https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92261
Bug ID: 92261
Summary: syntax errors on __has_builtin (__has_builtin)
Product: gcc
Version: 9.0
Status: UNCONFIRMED
Severity: minor
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: msebor at gcc dot gnu.org
Target Milestone: ---
With GCC support for __has_builtin (PR 66970) implemented, I noticed a
difference between it and Clang for the following test case that Clang accepts
and evaluates to zero:
$ cat z.c && gcc -S -Wall z.c
int f (void)
{
return __has_builtin (__has_builtin);
}
z.c: In function âfâ:
z.c:3:38: error: missing '(' after "__has_builtin"
3 | return __has_builtin (__has_builtin);
| ^
z.c:3:25: error: macro "__has_builtin" requires an identifier
3 | return __has_builtin (__has_builtin);
| ^~~~~~~~~~~~~
z.c:3:23: error: expected â;â at end of input
3 | return __has_builtin (__has_builtin);
| ^
| ;
4 | }
|
z.c:4:1: error: expected declaration or statement at end of input
4 | }
| ^