13.68.1 asprintf
LSB specification:
https://refspecs.linuxbase.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/baselib-asprintf.html
Documentation:
Gnulib module: vasprintf or vasprintf-posix or vasprintf-gnu
Portability problems fixed by either Gnulib module vasprintf
or vasprintf-posix
or vasprintf-gnu
:
- This function is missing on some platforms:
AIX 5.1, HP-UX 11, IRIX 6.5, Solaris 10, mingw, MSVC 14.
Portability problems fixed by either Gnulib module vasprintf-posix
or vasprintf-gnu
:
- This function does not support size specifiers as in C99 (
hh
, ll
,
j
, t
, z
) on some platforms:
Cygwin 1.5.24.
- printf
"%f"
, "%e"
, "%g"
of Infinity and NaN yields an
incorrect result on some platforms:
Solaris 11.0.
- This function does not support the ‘a’ and ‘A’ directives on some
platforms:
glibc-2.3.6, Mac OS X 10.5, NetBSD 9.0, OpenBSD 4.0, Solaris 11.4, Cygwin 1.5.x.
- This function does not support the ‘b’ directive, required by ISO C23,
on some platforms:
glibc 2.34, musl libc, macOS 12.5, FreeBSD 13.1, NetBSD 9.0, OpenBSD 7.2,
AIX 7.2, Solaris 11.4, Cygwin 2.9.0.
- This function does not support the ‘F’ directive on some platforms:
NetBSD 3.0, Cygwin 1.5.x.
- This function does not support the ‘ls’ directive on some platforms:
OpenBSD 4.0, Cygwin 1.5.x, Haiku.
- This function does not support precisions in the ‘ls’ directive correctly
on some platforms:
Solaris 11.4.
- This function does not support format directives that access arguments in an
arbitrary order, such as
"%2$s"
, on some platforms:
NetBSD 3.0.
- This function doesn’t support the
'
flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24.
- This function does not round the argument of the ‘a’ directive correctly
on some platforms:
Mac OS X 10.12, FreeBSD 13.0.
- printf
"%010f"
of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
Mac OS X 10.5, FreeBSD 6.0, NetBSD 5.0, Solaris 11.0, Cygwin 1.5.x.
- This function produces wrong output for the ‘lc’ directive with a NUL
wide character argument on some platforms:
glibc 2.35, FreeBSD 13.1, NetBSD 9.0, OpenBSD 7.2, macOS 12.5, AIX 7.2, Solaris 11.4, and others.
- This function can crash in out-of-memory conditions on some platforms:
FreeBSD 13.0, NetBSD 5.0.
Portability problems fixed by Gnulib module vasprintf-gnu
:
- This function does not support the ‘B’ directive on some platforms:
glibc 2.34, FreeBSD 13.1, NetBSD 9.0, OpenBSD 7.2, macOS 12.5, AIX 7.2, Solaris 11.4, and others.
Portability problems not fixed by Gnulib:
- The
%m
directive is not portable, use %s
mapped to an
argument of strerror(errno)
(or a version of strerror_r
)
instead.