- 61 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 05:05:32 ]
- gccでAみたいに書くとstrict aliasing rules警告されるんで、
Bみたいに書いたんだけど、これって正しい、というか、 -fno-strict-aliasingを指定した場合と同じ意味になるって保証されてる? struct Vec { int x, y, z; }; int data[3][3] = {{0,1,2},{3,4,5},{6,7,8}}; int main() { Vec* v0 = (Vec*)data; // A 警告される Vec* v1 = (Vec*)(void*)data; // B 警告されない return 0; }
|

|