================
Comment at: lib/Sema/SemaTemplateInstantiateDecl.cpp:2663
@@ +2662,3 @@
+ LateAttrs, StartingScope);
+ InstPartialSpec->setInit(PartialSpec->getInit());
+
----------------
I think this won't correctly handle a case like:
template<typename A> struct S { template<typename B> static int V; };
template struct S<int>;
template<typename A> template<typename B> int S<A>::V<B> = 123;
int k = S<int>::V<void>;
... because we don't have the initializer yet at the point where we instantiate
the variable template's declaration. You'll need to go back to the original
template and look for an initializer there.
http://llvm-reviews.chandlerc.com/D1448
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits