Heads up! The autoconf port was just updated to 2.73. One of the changes in 
this version is that it defaults to C23 if the compiler supports it. Xcode 26 
clang supports C23 as do newer MacPorts clangs.

C23 is not fully backward compatible with older C standards. Very old ports 
that use autoreconf where no fixed upstream version is available may need to 
have the appropriate "-std=" flag added to put the compiler into whatever older 
mode it requires. 

Check the autoconf 2.73 release announcement:

https://lists.gnu.org/archive/html/info-gnu/2026-03/msg00008.html

> This is to announce the new stable release 2.73 of autoconf.
> 
> Autoconf 2.73 is largely a bug-fix release; the most important change
> is improved support for the 2024 revision of the C standard (commonly
> known as "C23") and for compilers that default to that revision.  We
> have also improved support for GNU Gettext and other major third-party
> extensions to the Autotools.

> ** Backward incompatibilities
> 
> *** AC_PROG_CC now prefers C23 if available.
>   Older code may need to be updated, as C23 has removed old-style
>   (K&R) function definitions and declarations, now uses type-generic
>   functions for strchr and similar functions, and has new keywords
>   alignas, alignof, bool, constexpr, false, nullptr, static_assert,
>   thread_local, true, typeof, typeof_unqual.
> 
>   The shell variable $ac_prog_cc_stdc can now take the value ‘c23’.
>   Configure scripts may need to be adjusted to handle this.  It is
>   likely to be more future-proof to check this variable for values
>   that indicate the compiler is too *old*.
> 
> *** AC_PROG_CC no longer checks __STDC__ or variable length arrays (VLAs).
>   This ports better to MSVC, which does not define __STDC__ and does
>   not support VLAs.  Although C99 requires VLAs, they are optional in
>   C11 and later.  Programs can use AC_C_VARARRAYS and __STDC_NO_VLA__
>   to use VLAs if available.
> 
> *** AC_PROG_CXX no longer attempts to switch to C++98 or C++11.
>   Instead, it uses the compiler's default, which you can override
>   by configuring with something like CXX='g++ -std=gnu++11'.
>   This reverts to Autoconf 2.69 behavior, and also fixes a bug where
>   AC_PROG_CXX rejected C++20 compilers.

Reply via email to