This clearly is a constraint violation, in particular in view of
6.3.2.2 void: The (nonexistent) value of a void expression (an expression that has type void) shall not be used in any way,
That means that the incomplete type void
is a dead end that cannot be reused for any purpose whatsoever.