runtime: make PR #136 Windows soul reproducible (Win32 setsockopt + fsync portability) #69
Reference in New Issue
Block a user
Delete Branch "hotfix/win-runtime-portability"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What & why
neuron-ui PR #136 hand-built a curl-enabled Windows
neuron.exeby compilingneurondistsoul.c(neuron PR #77) against foundation/elel_runtime.c(el PR #68)with
x86_64-w64-mingw32-gcc. gcc 15 promoted twoel_runtimeportability defects tohard errors, and those fixes only ever lived in staged local copies — so the Windows
soul cannot be rebuilt from a clean
elcheckout. This upstreams the two minimal fixes soPR #136's Windows soul is reproducible from
main.The two fixes (tiny — 4 insertions, 2 deletions)
el_runtime.c—http_serve_asyncsetsockopt cast. On Win32/mingwsetsockopttakes
optvalasconst char*, notint*. Cast both calls to(const char*)— a no-opon POSIX, and identical to the four already-cast sites elsewhere in the file.
el_platform_win.h—#define fsync(fd) _commit(fd). Windows has nofsync();_commit()(<io.h>, already included) is the equivalent. Placed under the existing_WIN32-only guard beside the other POSIX→Win32 shims, soengram_save's persist pathbuilds on Windows. The POSIX path is completely untouched.
Verification
cc -c -O2 el_runtime.c(macOS/clang): exit 0 — confirms thesetsockopt cast does not regress the POSIX build.
_WIN32,-DHAVE_CURL, wincurl/openssl headers): exit 0, zero warnings — the exact gcc 15 that previously erred
now compiles clean.
neuron.exe.References
el_runtime.cused by the Windows build⚠️ DO NOT MERGE / DO NOT DEPLOY without maintainer review
Production hold is in effect. This is build+PR only. Do not merge, deploy, or touch any live
soul/engram/binary on the strength of this PR — maintainer review required.
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.