P3932R0 — Fix LWG4470: Fix integer-from in [simd] (5 items) LWG
Matthias Kretz
This paper resolves LWG4470, which identifies that integer-from is used incorrectly throughout [simd] after complex became a vectorizable type, making Bytes=16 possible without a corresponding 128-bit integer type. The paper additionally incorporates resolutions for LWG4518 (simd::cat return type causes unexpected ABI tag changes, fixed by using resize_t based on the first argument) and LWG4414 (deduce-abi-t is underspecified for unsupported arguments and incorrectly referenced from rebind and resize traits).

References — Anthropic Citations API

[1]
"template constexpr size_t mask-element-size = see below; 3.4 modify [simd.expos.abi] In [simd.expos.abi], change: [simd.expos.abi] 4 deduce-abi-t is definednames an ABI tag type..."
[2]
"The implementation-defined maximum for N is not smaller than 64 and can differ depending on T. 5 Where present,If deduce-abi-t names an ABI tag type such that, the following is true: •..."
[2]
"The implementation-defined maximum for N is not smaller than 64 and can differ depending on T. 5 Where present,If deduce-abi-t names an ABI tag type such that, the following is true: •..."
Summary: P3932R0 proposes wording fixes for LWG issue 4470, replacing the exposition-only integer-from variable template in [simd] with mask-element-size and adjusting related wording in [simd.expos.defn], [simd.expos.abi], and [simd.traits] to resolve specification inconsistencies.
Pipeline: Discovery (Anthropic Opus + Citations API) → Verification Gate (OpenRouter Opus) → Report Writer (OpenRouter Opus)
Provenance: All references are machine-verified character positions from the Anthropic Citations API — deterministic, exact substrings, not model-generated quotes.