Fix notes regarding the instantiation of member classes (and test 'em).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67708 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/SemaTemplate/instantiate-member-class.cpp b/test/SemaTemplate/instantiate-member-class.cpp
index 26fddcf..fab65ce 100644
--- a/test/SemaTemplate/instantiate-member-class.cpp
+++ b/test/SemaTemplate/instantiate-member-class.cpp
@@ -6,7 +6,7 @@
   struct C { T &foo(); };
 
   struct D {
-    struct E { T &bar(); };
+    struct E { T &bar(); }; // expected-error{{cannot form a reference to 'void'}}
     struct F; // expected-note{{member is declared here}}
   };
 };
@@ -31,3 +31,8 @@
   f->foo(); // expected-error{{implicit instantiation of undefined member 'struct X<float>::D::F'}}
   
 }
+
+
+X<void>::C *c3; // okay
+X<void>::D::E *e1; // okay
+X<void>::D::E e2; // expected-note{{in instantiation of member class 'struct X<void>::D::E' requested here}}