Re: git: 8dcf3a82c54c - main - libc: Implement bsort(3) a bitonic type of sorting algorithm.
- Reply: Hans Petter Selasky : "Re: git: 8dcf3a82c54c - main - libc: Implement bsort(3) a bitonic type of sorting algorithm."
- In reply to: Hans Petter Selasky : "git: 8dcf3a82c54c - main - libc: Implement bsort(3) a bitonic type of sorting algorithm."
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 19 Apr 2023 19:07:15 UTC
Hans Petter Selasky wrote: > diff --git a/include/stdlib.h b/include/stdlib.h > index 730223e7fd77..857092b9053e 100644 > --- a/include/stdlib.h > +++ b/include/stdlib.h > @@ -107,6 +107,10 @@ void *malloc(size_t) __malloc_like __result_use_check __alloc_size(1); > int mblen(const char *, size_t); > size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t); > int mbtowc(wchar_t * __restrict, const char * __restrict, size_t); > +#if __BSD_VISIBLE > +void bsort(void *, size_t, size_t, > + int (* _Nonnull)(const void *, const void *)); > +#endif > void qsort(void *, size_t, size_t, > int (* _Nonnull)(const void *, const void *)); > int rand(void); > @@ -300,6 +304,8 @@ int heapsort(void *, size_t, size_t, > #ifdef __BLOCKS__ > int heapsort_b(void *, size_t, size_t, > int (^ _Nonnull)(const void *, const void *)); > +void bsort_b(void *, size_t, size_t, > + int (^ _Nonnull)(const void *, const void *)); > void qsort_b(void *, size_t, size_t, > int (^ _Nonnull)(const void *, const void *)); > #endif > @@ -313,6 +319,8 @@ int mkostemps(char *, int, int); > int mkostempsat(int, char *, int, int); > void qsort_r(void *, size_t, size_t, > int (*)(const void *, const void *, void *), void *); > +void bsort_r(void *, size_t, size_t, > + int (*)(const void *, const void *, void *), void *); > int radixsort(const unsigned char **, int, const unsigned char *, > unsigned); > void *reallocarray(void *, size_t, size_t) __result_use_check > @@ -397,6 +405,11 @@ errno_t qsort_s(void *, rsize_t, rsize_t, > int (*)(const void *, const void *, void *), void *); > #endif /* __EXT1_VISIBLE */ > > +#if __BSD_VISIBLE > +errno_t bsort_s(void *, rsize_t, rsize_t, > + int (*)(const void *, const void *, void *), void *); > +#endif /* __BSD_VISIBLE */ > + > __END_DECLS > __NULLABILITY_PRAGMA_POP > This causes ports to fail, so far with Python's configure phase and any Python ports with C extensions: In file included from /usr/local/include/python3.11/Python.h:23: /usr/include/stdlib.h:409:1: error: unknown type name 'errno_t' errno_t bsort_s(void *, rsize_t, rsize_t, ^ /usr/include/stdlib.h:409:35: error: redefinition of parameter 'rsize_t' errno_t bsort_s(void *, rsize_t, rsize_t, ^ /usr/include/stdlib.h:409:26: note: previous declaration is here errno_t bsort_s(void *, rsize_t, rsize_t, ^ 2 errors generated. -- Charlie Li …nope, still don't have an exit line.