Patrick, Great explanation. It really clarified it for me, for the first time. I would make one minor suggestion. Maybe I'm dense but I puzzled over the example with the union longer than necessary simply because the name "a" is overloaded. The example could have been easier to read if the "a" member of the union had been named something different, like "acopy" as was used in an earlier example. Thanks for posting this. John Boncek -- View this message in context: http://old.nabble.com/Clarification-on-Gcc%27s-strict-aliasing-rules-tp30151126p30176081.html Sent from the gcc - Help mailing list archive at Nabble.com.