Re: Revert "Many Pages: Remove references to C89"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Matt,

On 3/10/23 02:51, Matt Jolly wrote:
> Hi All
> 
> I hope this email finds you well. I am writing to raise an issue that has been causing inconvenience
> for me (and potentially others). The recent removal of C89 information from man pages
> (72b349dd8c209d7375d4d4f76e2315943d654ee9) has put me in a difficult situation.
> As I continue to work on code that adheres to the C89 style, such as cURL, I am unable to quickly
> determine if a particular function can be used or if it was introduced in a later standard like C99.
> This slows down my workflow and hampers my productivity.
> 
> Therefore, I kindly request that we revert the changes made in the "Many pages: Remove references to C89" patch.
> Furthermore, I urge everyone to recognize the importance of this information and ensure it is not removed from man pages in the future.

The main problem was that the existing info about C89 was not consistent.
Some pages declared APIs being standard since C89, while others didn't.
Incorrect info isn't much better than no info.

I'm curious about cURL's real need for C89.  I see that cURL uses GNU
extensions (-std=gnu89), which actually pulls most of C99[1] (I think
it pulls the entire C library, and most of the core language).

Virtually all (even MS, which has always been the last in this)
systems support C99; why would you consciously avoid it?  Is there
any system that doesn't yet support it?  Which are the C libraries
that you need to support that don't provide C99 functions by default
(or at all)?

I'd like to really understand the need for C89 in 2023.


Cheers,

Alex


> 
> Thank you for your attention to this matter. Please let me know if you have any questions or concerns.
> 
> Cheers,
> 
> Matt
> 
> 


[1]:

$ cat llabs.c 
#include <stdlib.h>

int f(void)
{
	return llabs(0);
}


$ cc -Wall -Wextra -std=c89 llabs.c -S
llabs.c: In function ‘f’:
llabs.c:5:16: warning: implicit declaration of function ‘llabs’; did you mean ‘labs’? [-Wimplicit-function-declaration]
    5 |         return llabs(0);
      |                ^~~~~
      |                labs


$ cc -Wall -Wextra -std=gnu89 llabs.c -S
$


-- 
<http://www.alejandro-colomar.es/>
GPG key fingerprint: A9348594CE31283A826FBDD8D57633D441E25BB5

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux