[LLVMbugs] [Bug 10110] New: Add support for __attribute__((bitwise)) and -Wbitwise
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Thu Jun 9 08:21:23 PDT 2011
http://llvm.org/bugs/show_bug.cgi?id=10110
Summary: Add support for __attribute__((bitwise)) and -Wbitwise
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Frontend
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: tim.nieradzik at gmx.de
CC: llvmbugs at cs.uiuc.edu
__attribute__((bitwise)) allows annotating integer types to detect type
mismatches. This feature is implemented in Sparse but it would be certainly
useful if Clang could do these checks out-of-the-box.
>From the man page:
---
Warn about unsupported operations or type mismatches with restricted integer
types.
Sparse supports an extended attribute, __attribute__((bitwise)), which creates
a new restricted integer type from a base integer type, distinct from the base
integer type and from any other restricted integer type not declared in the
same declaration or typedef. For example, this allows programs to create
typedefs for integer types with specific endianness. With -Wbitwise, Sparse
will warn on any use of a restricted type in arithmetic operations other than
bitwise operations, and on any conversion of one restricted type into another,
except via a cast that includes __attribute__((force)).
---
The Linux kernel already makes extensive use of __attribute__((bitwise)) to
distinguish between big-endian and little-endian integers, cf.
http://www.gelato.unsw.edu.au/IA64wiki/SparseAnnotations
--
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