Skip to content

Commit befe894

Browse files
committed
fix(windows): resolve Float32 parsing from UCRT
1 parent dc24317 commit befe894

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

STATUS.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@ not expose. Julia 1.10 stores retained vector capacity in its pseudo second dime
4040
uses a smaller `Decimal` layout, and top-level allocation probes include fixed call-site boxes on
4141
older Julia versions. The storage oracle now reads retained capacity through Julia's exported C API,
4242
layout checks use `16 + sizeof(Decimal)`, and typed measurement barriers isolate the hot paths.
43-
Windows now uses the CRT's directly rounded `strtof` result because Julia's Windows workaround parses
44-
through `Float64` and can double-round. Fixture paths and line endings are compared semantically.
43+
Windows now uses the Universal CRT's directly rounded `strtof` result because Julia's Windows
44+
workaround parses through `Float64` and can double-round. Fixture paths and line endings are compared
45+
semantically.
4546
The fuzz sample freezes the Julia 1.10–1.12 permutation algorithm because Julia 1.13 changed
4647
`randperm`; resource workers disable inherited coverage and now propagate their RSS exit code.
4748
One dedicated Ubuntu leg records informational coverage. High-window 1 GiB codec success probes are

src/jsonreader.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,8 @@ function tryparsefloat32(tok::AbstractString)
380380
endpoint = Ref{Ptr{UInt8}}(C_NULL)
381381
value = GC.@preserve text begin
382382
start = pointer(text)
383-
parsed = ccall(:strtof, Cfloat, (Ptr{UInt8}, Ptr{Ptr{UInt8}}), start, endpoint)
383+
parsed = ccall((:strtof, "ucrtbase"), Cfloat,
384+
(Ptr{UInt8}, Ptr{Ptr{UInt8}}), start, endpoint)
384385
endpoint[] == start + sizeof(text) ? parsed : nothing
385386
end
386387
return value

0 commit comments

Comments
 (0)