Add additional note to mark the cause of synthesized constructors.  Mark
declaration invalid if the constructor can't be properly built.  Addresses
remaining review comments from Fariborz for r86500.

llvm-svn: 86579
diff --git a/clang/test/SemaCXX/default-constructor-initializers.cpp b/clang/test/SemaCXX/default-constructor-initializers.cpp
index 48c9039..6adcdca 100644
--- a/clang/test/SemaCXX/default-constructor-initializers.cpp
+++ b/clang/test/SemaCXX/default-constructor-initializers.cpp
@@ -11,7 +11,7 @@
 
 struct X3 : public X2 { // expected-error {{must explicitly initialize the base class 'struct X2'}}
 };
-X3 x3;
+X3 x3; // expected-note {{first required here}}
 
 
 struct X4 { // expected-error {{must explicitly initialize the member 'x2'}} \
@@ -20,7 +20,7 @@
   X2 & rx2; // expected-note {{declared at}}
 };
 
-X4 x4;
+X4 x4; // expected-note {{first required here}}
 
 
 struct Y1 { // has no implicit default constructor
@@ -52,5 +52,5 @@
   volatile int v1;
 };
 
-Z1 z1;
+Z1 z1; // expected-note {{first required here}}