Parents: #256, CSS epic #235
Reproduction
The required macOS arm64 runtime-package build fails on current main 70a2db4c in run 35254142552, job 105313709946:
webscene_native_dom_scene.inc:443:34: error: 'from_chars' is unavailable: introduced in macOS 26.0
The call parses floating-point clip-path: inset(...) lengths. Integer std::from_chars is portable here; libc++ floating-point from_chars is unavailable at the package deployment target. The implementation predates PR #300 and reproduces in its post-merge package run.
Required fix
- Replace the unavailable floating parser with a locale-independent, bounded parser that accepts the same CSS numeric grammar already admitted by the inset path.
- Preserve complete-token validation, finite-only values, optional leading
+, zero-unit handling, px, and % behavior.
- Reject whitespace tails, partial numbers, NaN/Inf, overflow, unsupported units, and embedded NUL without reading beyond the input view.
- Reuse a shared portable CSS-number helper if one already meets those rules; do not add locale-sensitive parsing to scene publication.
Acceptance
- Focused positive/negative parser and retained inset-paint tests pass.
- macOS package target compiles at the declared deployment target.
- Linux/Windows portability builds pass the same parser contract.
- Native/Chromium inset geometry/pixels and the existing 4,096-effect lifecycle/performance gate remain unchanged.
Parents: #256, CSS epic #235
Reproduction
The required macOS arm64 runtime-package build fails on current
main70a2db4cin run 35254142552, job 105313709946:The call parses floating-point
clip-path: inset(...)lengths. Integerstd::from_charsis portable here; libc++ floating-pointfrom_charsis unavailable at the package deployment target. The implementation predates PR #300 and reproduces in its post-merge package run.Required fix
+, zero-unit handling,px, and%behavior.Acceptance