1 2 3 4 5 6 7 8 9 10 11 12
template<typename T> T f (T x) { static union { T i; }; T j = i; i = x; return j; }