1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
// PR c++/55032 template<typename T> struct vec3t { T c[3]; }; typedef vec3t<float> vec3; class Bounds { public: Bounds(const vec3 bb[2]); void foo(const vec3 & v) { v.c[0]; } }; template<typename T> void work(T& value); void foo() { vec3 bb[2]; work(bb); }