mirror of
git://git.savannah.gnu.org/config.git
synced 2025-05-26 09:06:38 +12:00

Implicit ‘int’ (e.g. ‘extern foo();’ meaning the same thing as ‘extern int foo();’) was dropped from the C standard in its 1999 edition. Twenty-five years later, free C compilers are finally starting to make this an error by default, so let’s not use it anymore in config.guess probe programs. (Note: As of this writing, GCC 14 and Clang 16 are both more lenient for ‘main() { … }’ specifically than for other uses of implicit int. Still, the writing is clearly on the wall.) We continue to use ‘int main() { … }’, instead of ‘int main(void) { … }’, because these programs may be compiled by truly ancient compilers that do not recognize the keyword ‘void’. This leaves open the possibility of a compiler that errors by default on an empty argument list in a function definition, which, prior to the 2024 C standard, is technically still an “old-style” function definition; but we can worry about that if and when it comes up. Signed-off-by: Petr Vorel <petr.vorel@gmail.com> Co-authored-by: Zack Weinberg <zack@owlfolio.org> Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
Description
No description provided
Languages
Perl
77.6%
Shell
18.9%
Makefile
3.5%