------- Comment #2 from gcaprino at gmail dot com 2008-05-22 18:15 ------- (In reply to comment #1) > This code also does violates C aliasing rules.
I'm sorry, but I don't understand what you mean. Do you think there is a problem with the code portion such that it's not legal, safe C code? (btw this is part of a larger function which I reduced to facilitate debugging of this issue). It seems to me that nothing can change the value of "p1", since no addresses are taken to write into the stack. "p2" could point inside the structure pointed by "p1", but it should not be possible for "p2" to point at "p1", right? Besides, "p2" is only used after the register is saved/reloaded from the stack. Could you elaborate? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36303