Opened 14 years ago
Closed 13 years ago
#222 closed defect (fixed)
gcc 4.3 semantic change of extern inline
Reported by: | Yuri Dario | Owned by: | bird |
---|---|---|---|
Priority: | normal | Milestone: | libc-0.6.4 |
Component: | libc-frontend | Version: | 0.6.2 |
Severity: | normal | Keywords: | |
Cc: |
Description
When compiling with -std=c99 or -std=gnu99, the extern inline keywords changes meaning. GCC 4.3 conforms to the ISO C99 specification, where extern inline is very different thing than the GNU extern inline extension.
If the old GNU extern inline behavior is desired, one can use extern inline attribute((gnu_inline)).
Only stdio.h have this problem.
Attachments (1)
Change History (6)
comment:1 Changed 14 years ago by
comment:2 Changed 13 years ago by
Component: | gcc → libc-frontend |
---|---|
Status: | new → assigned |
The patch isn't quite right as we cannot use 'inline' in C headers, it must be 'inline'. The right thing to do here probably static inline func() {}'.
comment:3 Changed 13 years ago by
I built a lot of code using above changes, from basic libs to full applications.
comment:4 Changed 13 years ago by
The above patch is the one being shipped with gcc4 in very first place.
See http://gcc.gnu.org/onlinedocs/gcc-4.2.4/gcc/Inline.html#Inline
Current patch to stdio.h