[clang] Add tests for some CWG 5xx issues (#87909)
This patch covers [CWG393](https://cplusplus.github.io/CWG/issues/393.html) "Pointer to array of unknown bound in template argument list in parameter", [CWG528](https://cplusplus.github.io/CWG/issues/528.html) "Why are incomplete class types not allowed with `typeid`?", [CWG550](https://cplusplus.github.io/CWG/issues/550.html) "Pointer to array of unknown bound in parameter declarations", [CWG553](https://cplusplus.github.io/CWG/issues/553.html) "Problems with friend allocation and deallocation functions", [CWG555](https://cplusplus.github.io/CWG/issues/555.html) "Pseudo-destructor name lookup", [CWG560](https://cplusplus.github.io/CWG/issues/560.html) "Use of the `typename` keyword in return types". CWG393 is on this list, because CWG550 is marked as a duplicate of CWG393. Test for CWG553 has been already written, but it was missing a status comment. As a drive-by fix, I'm adding missing status comments to CWG1584 and CWG1903 as well. CWG555 used CWG466 test, and also a variation of that test to test references. CWG466 is now testing non-reference non-pointer case. CWG560 showcases again that converting warnings to errors in DR tests via `-pedantic-errors` doesn't make things more clear. By default that test is accepted with an extension warning since we implemented [P0634R3](https://wg21.link/p0634r3) "Down with `typename`!" in Clang 16.
parent
33779b86
Please register or sign in to comment