[LLVMbugs] [Bug 5253] New: [GNU Extension] Redefinition of "extern inline" function
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Mon Oct 19 09:03:48 PDT 2009
http://llvm.org/bugs/show_bug.cgi?id=5253
Summary: [GNU Extension] Redefinition of "extern inline" function
Product: clang
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Semantic Analyzer
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: dgregor at apple.com
CC: llvmbugs at cs.uiuc.edu
Blocks: 4719
GCC allows redefinition of an "extern inline" function in GNU89 mode, accepting
the following code:
extern inline int f(int a) { return a; }
int f(int b) { return b; }
which Clang rejects with
$ clang -std=gnu89 foo.c
foo.c:3:5: error: redefinition of 'f'
int f(int b) { return b; }
^
foo.c:1:19: note: previous definition is here
extern inline int f(int a) { return a; }
^
2 diagnostics generated.
We previously decided that we would not implement this feature (see bug #4719),
but apparently this extension is used by Wine:
http://lists.cs.uiuc.edu/pipermail/cfe-dev/2009-October/006766.html
We should reconsider.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list