On Tue, Oct 25, 2022 at 10:05:52AM -0400, Ben Cotton wrote: > Neither change is trivial to implement because introducing errors for > these constructs (as required by C99) alters the result of autoconf > configure checks. Quite a few such checks use an implicitly declared > `exit` function, for instance. These failures are not really related > to the feature under test. If the build system is well written, the > build still succeeds, the relevant features are automatically disabled > in the test suite and removed from reference ABI lists, and it's not > immediately apparent that feature is gone. Therefore, some care is > needed that no such alterations happen, and packages need to be ported > to C99. Various tools for this porting activity are being developed to > support this proposal. Cross-distribution collaboration will help as > well, sharing patches and insights. Would it help if we made autoreconf (and the equivalent step for other build systems) mandatory? Debian has declared this as "good practice" since forever[0]. It would mean we could fix any problems in current autoconf concurrently with the changes to GCC and Fedora. > ==== Removal of old-style function definitions ==== > > An old style function definition looks like this: > > int > sum (a, b) > char *a; > int b; > { > return atoi (a) + b; > } <sad-face> I preferred it when C was like this .. The first real paying job I had used a compiler[1] that only supported K&R C decls. Rich. [0] https://wiki.debian.org/Autoreconf [1] Microware C Compiler for OS-9 -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-p2v converts physical machines to virtual machines. Boot with a live CD or over the network (PXE) and turn machines into KVM guests. http://libguestfs.org/virt-v2v _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue