From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Sat, 20 Aug 2011 21:32:55 +0200 Subject: [U-Boot] [PATCH 1/2 V2] USB: Fix complaints about strict aliasing in OHCI-HCD In-Reply-To: <201108201529.07254.vapier@gentoo.org> References: <1313867713-20949-1-git-send-email-marek.vasut@gmail.com> <201108201529.07254.vapier@gentoo.org> Message-ID: <201108202132.56067.marek.vasut@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Saturday, August 20, 2011 09:29:06 PM Mike Frysinger wrote: > On Saturday, August 20, 2011 15:15:12 Marek Vasut wrote: > > __u32 datab[4]; > > > > - __u8 *data_buf = (__u8 *)datab; > > + union { > > + void *ptr; > > + __u8 *u8; > > + __u16 *u16; > > + __u32 *u32; > > + } databuf; > > > > + databuf.u32 = (__u32 *)datab; > > i'm not sure this is correct, but i'm not really an expert on aliasing > behavior. i think the union should sit on top of the storage, and not hide > the pointer casts. And endianity comes into play here too ... that's where my brain started chugging a bit too. That's why I'd like to see other's opinion on this. Cheers > -mike