Thread (4 messages) 4 messages, 4 authors, 2011-06-24

Re: [PATCH v2] xfs: Silence bounds checking compiler warning

From: Al Viro <viro@ZenIV.linux.org.uk>
Date: 2011-06-23 17:55:41
Also in: lkml

On Thu, Jun 23, 2011 at 10:27:26AM -0700, Andi Kleen wrote:
Maarten Lankhorst [off-list ref] writes:
quoted
gcc with -Warray-bounds generates a false positive on this
since xfs defines the struct with u8 name[1]; to be able to
add a tag at the end.
A better way would be to define it as name[0]. Then the compiler
would know it's a VLA. You may need to check noone relies on
the one byte though.
... and even better is to write in real C and have u8 name[]; in the
end of your structure.  That's the standard C99 for this kind of thing
(see 6.7.2.1p2, p16).  Zero-sized array is a gccism predating standard
flexible array members and since the standard syntax is accepted by
any gcc version that might be recent enough to build the kernel...

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help