Keep #3987's q, D, O, U, width, '-' and trailing '%' handling for
unknown conversions and fold it into this branch's measured path:
'#' and precision are ignored as measured, '+', space, apostrophe
and '0' with a width still throw.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
`sceAudioOutInit` now initializes AudioOut2, so the extra `sceAudioOut2Initialize()` in the speaker-info test after a legacy init pinned a repeated direct-init result that no run on the console covered; the test keeps the legacy-init to speaker-info success check. The debt file records that a repeated `sceAudioOutInit` returns 0 here against `0x8026000e` on the firmware and that a repeated `sceAudioOut2Initialize` is unmeasured, describes the flag-1 selector as the unidentified per-process libkernel value with BunnyFl's `0x14FFFFF` boundary, and splits the speaker-info entry so no entry passes the length limit.
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
The entry spliced the facet-lifetime sentence into the zeroed-storage claim; restore both, note that the new _Getcat entries ignore the locale name and always build the C facet, and mention std::wclog alongside std::clog.
alwaysNoconv, maxLength, encoding, in, out, unshift, length matches the MSVC/Dinkumware xlocale declaration order at 0x20-0x50; the generated layout is unchanged because each swapped pair shares one function pointer.
The got-slot-address-size-underflow case puts its GOT slot at the
32-bit wrapped address 0xfffff008, outside every PT_LOAD. The unused
filter still keeps the import, which the case keeps checking through
the CFG/GOT filtering line, and the Linux patcher now rejects the
relocation, so the case expects exit 2 with that message instead of an
output file.
The patch advisor prints its conversion options through command_line,
which quotes a path containing a space, and passes resolved paths to the
relinker, so the unit test failed when the temporary directory had a
space in its path or was reached through an 8.3 short name or a symlink.
Build the expected text with the same helper, resolve the fixture root
and give it a space so every machine exercises the quoted rendering.
Co-Authored-By: Claude Fable 5.1 <[email protected]>
RelocationWidth took the width of a COPY relocation from the output
symbol table, where every import has st_size 0, so the width was
always one byte and the two copy-* boundary cases passed for that
reason alone. #10658 rejects R_X86_64_COPY in validation, so the type
no longer reaches this check; until it merges, COPY takes the 8-byte
default like every other type. The three copy-* cases go with it.
TraceFormat::AppendString escaped every byte at or above 0x7f on its
own as \u00XX. A JSON \u escape names a code point, not a byte, so a
UTF-8 title came back as different characters: PPSA26344's param.json
name "Ghost of Yōtei" (ō = C5 8D) was written as \u00c5\u008d and
reads back as "YÅ\x8dtei" in every summary line.
A byte that starts a well-formed UTF-8 sequence (Unicode Table 3-7:
no overlong forms, no surrogates, nothing above U+10FFFF) is now
copied as is, since JSON text is UTF-8. Control characters, DEL and
any byte outside a well-formed sequence are still escaped as before,
so the existing lone-0xe9 case is unchanged.
guest_module_fixture passed -Wl,--no-as-needed on every host but
Windows, and Apple's ld64 rejects that option ("ld: unknown options:
--no-as-needed"), so the fixture failed to link on macOS. The option
keeps the DT_NEEDED entries that nid_patcher_dynamic_strings reads, and
that test parses the ELF dynamic section, so neither applies to the
Mach-O fixture: both now stay off Apple as they stay off Windows.
GuestFlexibleMemoryModule.cpp describes its segment with PF_R | PF_W on
macOS, where ElfTypes.hpp stands in for <elf.h>, but ElfTypes.hpp only
had PF_X and PF_W, so the fixture failed to compile on macOS with
"use of undeclared identifier 'PF_R'". PF_R is 4, as in the ELF
specification.
The export was mistyped as time_put<char, ostreambuf_iterator<wchar_t,
char_traits<char>>>::id, which demangles to a mixed-instantiation name
absent from aerolib. Restore the all-char spelling so the export keeps
its NID BamOsNbUcn4, and pin it: the test now declares the id extern
and round-trips its storage, so a spelling regression fails to link.
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
The conversion test failed before checking anything on a device without
shaderFloat64, as its single shader included v_cvt_f64_f32. That
instruction now runs in a second shader only when the target has the
Float64 capability, so the other f32 conversions are still checked on
such devices.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
The f32 conversions that only flush their inputs follow bit 0 of the
FLOAT_MODE f32 denormal field, as the f32 compares do: mode 1 keeps
denormal inputs like mode 3 and mode 2 flushes them like mode 0.
v_cvt_pk_u8_f32 also follows a round mode set at run time.
Measured on RDNA2 (gfx1036) with the hardware oracle.
Co-Authored-By: Claude Opus 5.5 <[email protected]>