managarm / mlibc

Portable C standard library
Other
851 stars 130 forks source link

Unimplemented printf specifier `%a` / `%A` #1102

Open Dennisbonke opened 3 months ago

Dennisbonke commented 3 months ago

autotools configure checks if we support a and A in our printf implementation. According to the man page, they should do the following

(C99; not in SUSv2, but added in SUSv3) For a conversion, the double argument is converted to hexadecimal notation (using the letters abcdef) in the style [-]0xh.hhhhp±d; for A conversion the pre‐
              fix 0X, the letters ABCDEF, and the exponent separator P is used.  There is one hexadecimal digit before the decimal point, and the number of digits after it is equal to the  precision.   The  de‐
              fault  precision  suffices for an exact representation of the value if an exact representation in base 2 exists and otherwise is sufficiently large to distinguish values of type double.  The digit
              before the decimal point is unspecified for nonnormalized numbers, and nonzero but otherwise unspecified for normalized numbers.  The exponent always contains at least one digit; if the  value  is
              zero, the exponent is 0.