http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53810
--- Comment #3 from Andrew Robb <ajrobb57 at gmail dot com> 2012-06-30 06:23:28 UTC --- template< int n> class Class { public: static int const _n = n; I thought that _n was defined. On 29/06/2012 23:01, pinskia at gcc dot gnu.org wrote: > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53810 > > --- Comment #2 from Andrew Pinski<pinskia at gcc dot gnu.org> 2012-06-29 > 22:01:07 UTC --- > GCC is having the correct behavior. You don't have a definition for the > static > const class variable, only the declaration. You need the definition as you > implictly take the address of the variable (via a reference). >