template <typename T>
class Foo {
public:
static double const vals[];
int run ();
};
template <typename T>
double const Foo<T>::vals[] = { 1, 2,3 };
template <typename T>
inline
int Foo<T>::run () {
return sizeof(vals); // error C2070: 'const double []': illegal sizeof operand
}
int main() {}
dGVtcGxhdGUgPHR5cGVuYW1lIFQ+CmNsYXNzIEZvbyB7CnB1YmxpYzoKICAgIHN0YXRpYyBkb3VibGUgY29uc3QgdmFsc1tdOwogICAgaW50IHJ1biAoKTsKfTsKCnRlbXBsYXRlIDx0eXBlbmFtZSBUPgpkb3VibGUgY29uc3QgRm9vPFQ+Ojp2YWxzW10gPSB7IDEsIDIsMyB9OwoKdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CmlubGluZQppbnQgRm9vPFQ+OjpydW4gKCkgewogICAgcmV0dXJuIHNpemVvZih2YWxzKTsgLy8gZXJyb3IgQzIwNzA6ICdjb25zdCBkb3VibGUgW10nOiBpbGxlZ2FsIHNpemVvZiBvcGVyYW5kCn0KCmludCBtYWluKCkge30=