I'm currently reading the new draft of the C23 standard (N3088), and I've noticed that in §5.2.4.1 the standard states:
The implementation shall be able to translate and execute a program that uses but does not exceed the following limitations for these constructs and entities: ... 32767 bytes in an object (in a hosted environment only)
This was the number in ANSI C/C89, and since C99 it was raised to 65535 - what is the reason to lower it back to the original amount?
I tried to look for any reference to it here and in the WG 14 Document Log but didn't find anything.