FreeBSD 11.4 __fflush returns 0 for a stream with no flags set, so a closed stream returns 0 without touching errno instead of the public fflush's -1 with EBADF. The test and the debt entry follow.
Co-authored-by: Hedi Trigui <[email protected]>
Keep both libSceLibcInternal test blocks in CMakeLists.txt: the multiprecision tests and the firmware answers tests.
Co-authored-by: PanagiotisKaraliolios <[email protected]>
MultiPrecision.cpp is derived from stl/src/multprec.cpp at the first
microsoft/STL release (219514876ea8): add its notice and make that
revision the source of record in the debt entry, which also records that
firmware 13.42 exports all four functions.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
NIDs QfPuSqhub7o, lrQSsTRMMr4, Gav1Xt1Ce+c and Ozk+Z6QnlTY follow
Dinkumware V6.00 multprec.cpp, the multiprecision helpers of
linear_congruential_engine, instead of throwing: five 64-bit words of
base 2^32 digits, the product by Knuth's Algorithm M and the remainder by
Algorithm D. _MP_Rem throws for the inputs where V6.00 reads outside its
arrays, and every export throws for a null array.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Resolves docs/dev/debt/libkernel.md: main's sigaction entry (SIGPIPE outside Windows) and this branch's signal entry, which points to libSceLibcInternal for siginterrupt.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Port FreeBSD 11.4 msun k_rem_pio2.c with the amd64 690-chunk 2/pi
table. Inputs the FreeBSD code would index out of bounds, convert out
of int32 range or overflow on throw instead.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Resolves docs/dev/debt/libc.md: main's updated _Thrd entry, and siginterrupt stays documented in libSceLibcInternal.md.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Keeps main's sigvec test block and this branch's firmware answers test
block, one after the other at the end of the libSceLibcInternal list.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Remove the four find-last placeholders from the recovered inventory.
The named provider is searched before the libc fallback, so throwing
placeholders would shadow the working implementation under review.
Keep the remaining declarations and definitions paired.
Update the technical debt count to match the remaining exports.
_Isdst returns -1. _Daysto(year, month) adds the leap days before the year
to the common or leap days-before-month table, as Dinkumware's _Daysto does,
and throws for a month outside the twelve table entries the module would
index past. _FXp_getw sums up to four float parts as Dinkumware's _Xp_getw
does. Read to the return from firmware 13.42's libSceLibcInternal,
disassembly only, not measured on a console.
Co-Authored-By: Claude Opus 5.5 <[email protected]>