Hi!
In v2, I've removed the explicit sentence saying that one should use
aligned_alloc(3) instead of memalign(3).
I've also documented that C11 had a bogus specification for
aligned_alloc(3), and that OpenBSD still implements that (although at
least, they don't exploit the UB). I've CCed them, in case they're not
aware that C17 fixed those issues.
I've documented that while the C11 specification had a lot of UB, no
implementation has ever implemented that, and so it's just theoretical
(and thankfully extinct) UB.
Apart from that, there are minor wording tweaks.
See the range-diff below.
Have a lovely day!
Alex
Alejandro Colomar (14):
man/man3/posix_memalign.3: Remove confusing exception
man/man3/posix_memalign.3: wfix
man/man3/posix_memalign.3: STANDARDS: aligned_alloc() conforms to C17,
not C11
man/man3/posix_memalign.3: STANDARDS: aligned_alloc() conforms to C23
man/man3/posix_memalign.3: STANDARDS: aligned_alloc() and
posix_memalign() conform to POSIX.1-2024
man/man3/{posix_,}memalign.3: Split memalign() from posix_memalign(3)
man/man3/{posix_memalign,pvalloc}.3: Split pvalloc() from
posix_memalign(3)
man/man3/{posix_memalign,valloc}.3: Split valloc() from
posix_memalign(3)
man/man3/{aligned_alloc,posix_memalign}.3: Split aligned_alloc() from
posix_memalign(3)
man/man3/posix_memalign.3: CAVEATS: Add section, and move paragraph to
it
man/man3/posix_memalign.3: Remove redundant text
man/man3/posix_memalign.3: NOTES: Remove superfluous section
man/man3/memalign.3: wfix
man/man3/aligned_alloc.3: HISTORY: Document bogus specification from
C11
man/man3/aligned_alloc.3 | 128 ++++++++++++++++++++++-
man/man3/memalign.3 | 77 +++++++++++++-
man/man3/posix_memalign.3 | 211 +++-----------------------------------
man/man3/pvalloc.3 | 49 ++++++++-
man/man3/valloc.3 | 89 +++++++++++++++-
5 files changed, 355 insertions(+), 199 deletions(-)
Range-diff against v1:
1: 90f18b452 = 1: 90f18b452 man/man3/posix_memalign.3: Remove confusing
exception
2: 19b5ea61e = 2: 19b5ea61e man/man3/posix_memalign.3: wfix
3: 95f523f48 ! 3: 82bcf3b0f man/man3/posix_memalign.3: STANDARDS:
aligned_alloc() conforms to ISO C17, not C11
@@ Metadata
Author: Alejandro Colomar <[email protected]>
## Commit message ##
- man/man3/posix_memalign.3: STANDARDS: aligned_alloc() conforms to ISO
C17, not C11
+ man/man3/posix_memalign.3: STANDARDS: aligned_alloc() conforms to C17,
not C11
ISO C17 removed a restriction that was in place in C11. This
documentation doesn't conform to C11; it conforms to C17.
4: 9db9d670c = 4: 04f5087e5 man/man3/posix_memalign.3: STANDARDS:
aligned_alloc() conforms to C23
5: 032768ed7 = 5: c8ffb2124 man/man3/posix_memalign.3: STANDARDS:
aligned_alloc() and posix_memalign() conform to POSIX.1-2024
6: de49191b8 ! 6: 51b7f9f43 man/man3/{posix_,}memalign.3: Split memalign()
from posix_memalign(3)
@@ man/man3/memalign.3
+.SH DESCRIPTION
+.BR memalign ()
+is the same as
-+.BR aligned_alloc ().
-+Use that instead.
++.BR aligned_alloc (3).
+.\" The behavior of memalign() for size==0 is as for posix_memalign()
+.\" but no standards govern this.
+.SH ATTRIBUTES
7: af29aac57 = 7: a60d6283f man/man3/{posix_memalign,pvalloc}.3: Split
pvalloc() from posix_memalign(3)
8: 03408db2f = 8: 126c39d0f man/man3/{posix_memalign,valloc}.3: Split
valloc() from posix_memalign(3)
9: 6da397d5c = 9: b23cb7bc6 man/man3/{aligned_alloc,posix_memalign}.3:
Split aligned_alloc() from posix_memalign(3)
10: 213710d2c = 10: 1e5a0260e man/man3/posix_memalign.3: CAVEATS: Add
section, and move paragraph to it
11: 7960911fc = 11: c0b9fd96a man/man3/posix_memalign.3: Remove redundant text
12: 54e7d20ee = 12: 34d984534 man/man3/posix_memalign.3: NOTES: Remove
superfluous section
-: --------- > 13: a5342ef55 man/man3/memalign.3: wfix
-: --------- > 14: cdfc42078 man/man3/aligned_alloc.3: HISTORY: Document
bogus specification from C11
--
2.51.0