Strict aliasing, or type based alias analysis as it is also known, is enabled by default in new versions of GCC (at least when optimizing with -O2), but unfortunately most programmers don't even know about the existence of the strict aliasing rules. To the uninitiated it seems that GCC is producing buggy code, so perhaps Microsoft is smart not to have implemented strict aliasing in Visual C++ yet.
The best explanation of strict aliasing I have seen is Understanding Strict Aliasing by Mike Acton. He also has a related article about the restrict keyword, Demystifying the Restrict Keyword.