c++: naming typedef and incomplete class [PR126031]

We can't look at the bases and members of a forward-declared nested class,
and such a forward declaration can't contain problematic constructs, so
treat it as OK.

	PR c++/126031
	PR c++/121552

gcc/cp/ChangeLog:

	* decl.cc (maybe_diagnose_non_c_class_typedef_for_linkage): Handle
	incomplete type.

gcc/testsuite/ChangeLog:

	* g++.dg/cpp2a/typedef2.C: New test.
2 files changed