Maybe leave a comment in bug-716242.c about the removed tests and a pointer to this bug report. Done. I am also not adamant about keeping or rejecting the (__code *) exception. Both have their virtues. In that case, I'd prefer to reject it, which is what the attached patch does. Documentation is also updated and version number bumped as requested.
The proposed testing might look excessive for the reported bug, but I can only assume that operations involving constexpr operands with non-constexpr operands are largely untested, otherwise this bug wouldn't exist. Fixing it seems quite high priority to me.
Please review the attached patch created in negotiation with Codex.
Please consider the attached candidate bug fix created in negotiation with Codex. It selects tests by language features and select compatible element types with _Generic instead of assuming compiler-specific wchar_t types. The tests now cover incompatible L/u initialisation in both directions, at file and block scope, with and without braces, and matching wide strings.
Please consider the attached candidate bug fix patch authored with Codex.
I believe that the existing candidate fix for [bugs:#4131] (awaiting approval) also fixes this bug.
@spth and @maartenbrock, here's a candidate fix that I think is a bit simpler and more robust: it allows the code from the macro definition in [bugs:#294] as a special case, instead of allowing any malformed type name that is parsed as a function returning a function.
@maartenbrock Here's an alternative candidate fix that removes support for the code from the macro definition in [bugs:#294] entirely. ("IMO this Keil syntax need not be supported, esp. if it is against the standard. ")