You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make full integration harness warning-clean under -Werror and enforce it in Linux CI.
Track binding reads in cgen to silence unused locals, fix string literal .data casts, regenerate example C snapshots, and replace the 13-test warning smoke with the full test_runner.sh harness.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
## 2026-06
4
4
5
-
-**Readiness hardening**: beta compatibility and runtime ABI documents, a lightweight security policy, CLI/`ion-build` multi-error type diagnostics, sanitizer CI smoke (6 tests), and generated-C `-Werror` CI smoke on a curated subset of 13 integration tests (not the full harness; most generated C is not yet warning-clean under `-Wall -Wextra -Werror`). Cgen warning-hygiene improvements (`ION_MAYBE_UNUSED`, borrow/defer silences, string `for...in` length casts), `String` runtime data as `uint8_t*`, and `CFLAGS`/`LDFLAGS` support in the integration harness.
5
+
-**Readiness hardening**: beta compatibility and runtime ABI documents, a lightweight security policy, CLI/`ion-build` multi-error type diagnostics, sanitizer CI smoke (6 tests), and full integration harness`-Wall -Wextra -Werror` on Linux CI. Cgen warning-hygiene improvements (`ION_MAYBE_UNUSED`, binding usage tracking, borrow/defer silences, string literal `.data`/`uint8_t*` casts, string `for...in` length casts), `String` runtime data as `uint8_t*`, and `CFLAGS`/`LDFLAGS` support in the integration harness.
6
6
-**Language**: `for` iteration, `match` guards, `else if`, `break`/`continue`, `loop {}`, `+=`, hex/bin literals, function types `fn(T) -> R`, tuple literals and destructuring. Capture-free fn literals (`fn(T) -> R` lowered to static C function pointers; `ClosureCapture` for outer bindings).
`ion-lsp` is built with the release command above; point the editor extension at `target/release/ion-lsp` (see README IDE Support).
22
22
23
-
CI (`.github/workflows/ci.yml`) builds all three binaries on Linux, runs integration tests, ASan/UBSan smoke on generated C, and a `-Wall -Wextra -Werror`smoke subset on Linux (full-suite warning-clean builds are not yet enforced). The Windows job builds `ion-compiler` and `ion-build` only. Build `ion-lsp` locally for IDE work.
23
+
CI (`.github/workflows/ci.yml`) builds all three binaries on Linux, runs integration tests, ASan/UBSan smoke on generated C, and the full integration harness under `-Wall -Wextra -Werror` on Linux. The Windows job builds `ion-compiler` and `ion-build` only. Build `ion-lsp` locally for IDE work.
Copy file name to clipboardExpand all lines: examples/http_server.c
+7Lines changed: 7 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -73,6 +73,12 @@ int handle_client(int ION_MAYBE_UNUSED client_fd) {
73
73
int_sent6=send_sys(client_fd, (uint8_t*)"<html><head><title>Ion HTTP Server</title></head><body><h1>Hello from Ion!</h1><p>This is a simple HTTP server written in Ion.</p></body></html>", 89, 0);
0 commit comments