Subject: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9

From: Po Lu <[email-masked]>
Date: Thu, 18 May 2023 19:11:07 +0800

Paul Eggert <[email-masked]> writes:

> Thanks for reporting the problem. Since _Generic is used here merely
> as a micro-optimization on 32-bit platforms, it's not worth whatever
> porting hassle you've run into, so I installed the attached patch so
> that modiff no longer uses _Generic.

Would anyone mind if I made configure check for that?

Btw, couldn't the macro be defined to something along the lines of this
when the compiler only supports C99?

  #define foo(expression)			  \
    (sizeof (expression) == sizeof (signed char)  \
     ? code_for_signed_char			  \
     : (sizeof (expression) == sizeof (short int) \
	? code_for_short_int			  \
	: (sizeof (expression) == sizeof (int)	  \
	   ? code_for_int			  \
	   ... and so on