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.