c++: designator for base class member [PR101405]

A C++20 designator must name a direct non-static member of the class; in
this case it names a member of a base class, and we should give an error
instead of crashing.

	PR c++/101405

gcc/cp/ChangeLog:

	* decl.cc (reshape_init_class): Reject designator for a member of
	another class.

gcc/testsuite/ChangeLog:

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