[llvm-bugs] [Bug 26675] New: intrin.h says "static __inline__" twice, triggering -Wduplicate-decl-specifier

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Feb 19 16:34:34 PST 2016


https://llvm.org/bugs/show_bug.cgi?id=26675

            Bug ID: 26675
           Summary: intrin.h says "static __inline__" twice, triggering
                    -Wduplicate-decl-specifier
           Product: new-bugs
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: sfinae at hotmail.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

http://llvm.org/svn/llvm-project/cfe/trunk/lib/Headers/Intrin.h contains:

[...]
static __inline__
unsigned long __cdecl _lrotr(unsigned long, int);
static __inline__
static __inline__
void _ReadBarrier(void);
static __inline__
void _ReadWriteBarrier(void);
[...]

The duplicated line before _ReadBarrier() triggers -Wduplicate-decl-specifier.
This is usually suppressed because it's a system header, but preprocessing
without linemarkers will reveal the warning. Here's what that looks like (with
Clang/C2, but this should repro with Clang/LLVM on Windows too):

C:\Temp>type meow.cpp
#include <intrin.h>

C:\Temp>clang -c meow.cpp

C:\Temp>clang -E -P meow.cpp > meow.ii

C:\Temp>clang -c -Wno-ignored-attributes meow.ii
meow.ii:6865:1: warning: duplicate 'static' declaration specifier
[-Wduplicate-decl-specifier]
static __inline__
^~~~~~~
meow.ii:6865:8: warning: duplicate 'inline' declaration specifier
[-Wduplicate-decl-specifier]
static __inline__
       ^
2 warnings generated.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20160220/6bcb70a6/attachment.html>


More information about the llvm-bugs mailing list