UBIFS: Fix dereferencing type-punned pointer compiler warning
PATCH 1/1 UBIFS: Fix dereferencing type-punned pointer compiler warning
Fix compiler warning
In file included from ubifs.h:2137:0,
from ubifs.c:26:
misc.h: In function 'ubifs_idx_key':
misc.h:263:26: warning: dereferencing type-punned pointer will break strict-aliasing rules
seen with gcc version 4.5.1 (Sourcery G++ Lite 2010.09-50).
No functional change.
---
This was found building 'omap3_pandora' with the above tool chain.
Note: Compiling the ubifs (make fs/ubifs) in a recent mainline kernel
(2.6.37-rc7) with the same tool chain doesn't give this warning. There seems to be no difference in the recent ubifs kernel sources regarding this piece of code (structs ubifs_idx_node, ubifs_branch and the function ubifs_idx_key in misc.h), though.
So I'm not sure why this warning is in U-Boot but not in the kernel. Different compiler options?
fs/ubifs/misc.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
fs/ubifs/misc.h +2 -1
@@ -260,7 +260,8 @@ struct ubifs_branch *ubifs_idx_branch(costatic inline void *ubifs_idx_key (const struct ubifs_info *c,const struct ubifs_idx_node *idx) { -return (void *)((struct ubifs_branch *)idx->branches)->key; +const __u8 *branch = idx->branches; +return (void *)((struct ubifs_branch *)branch)->key; }/**
PATCH 1/1 UBIFS: Fix dereferencing type-punned pointer compiler warning
Quoted 11 lines · On Saturday 25 December 2010 10:58:46 Dirk Behme wrote:
Fix compiler warning
In file included from ubifs.h:2137:0,
from ubifs.c:26:
misc.h: In function 'ubifs_idx_key':
misc.h:263:26: warning: dereferencing type-punned pointer will break strict-aliasing rulesseen with gcc version 4.5.1 (Sourcery G++ Lite 2010.09-50).
No functional change.
Applied to u-boot-ubi. Thanks.
Cheers,
Stefan
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de