From 5c00b8cd03cbfc516cce92229f3f4974d7549c24 Mon Sep 17 00:00:00 2001 From: _ov4 Date: Fri, 16 Oct 2026 20:53:52 +0800 Subject: test(compiler): cover fixed CIE behavior and runtime boundaries Record independently traced outputs with pending human review. Keep standard syntax and naming conflicts as real failures. Co-Authored-By: Claude Fable 5.1 --- tests/i/string-extensions/case.json | 3 +++ tests/i/string-extensions/expected.txt | 5 +++++ tests/i/string-extensions/notes.md | 7 +++++++ tests/i/string-extensions/program.cps | 5 +++++ 4 files changed, 20 insertions(+) create mode 100644 tests/i/string-extensions/case.json create mode 100644 tests/i/string-extensions/expected.txt create mode 100644 tests/i/string-extensions/notes.md create mode 100644 tests/i/string-extensions/program.cps (limited to 'tests/i/string-extensions') diff --git a/tests/i/string-extensions/case.json b/tests/i/string-extensions/case.json new file mode 100644 index 0000000..1f18635 --- /dev/null +++ b/tests/i/string-extensions/case.json @@ -0,0 +1,3 @@ +{ + "exit_code": 0 +} diff --git a/tests/i/string-extensions/expected.txt b/tests/i/string-extensions/expected.txt new file mode 100644 index 0000000..c158267 --- /dev/null +++ b/tests/i/string-extensions/expected.txt @@ -0,0 +1,5 @@ +ab: +65:Z +TRUE:FALSE:FALSE +9223372036854775807 +TRUE diff --git a/tests/i/string-extensions/notes.md b/tests/i/string-extensions/notes.md new file mode 100644 index 0000000..5ab3d90 --- /dev/null +++ b/tests/i/string-extensions/notes.md @@ -0,0 +1,7 @@ +# string-extensions + +Human review: pending. Expected output was independently traced by AI, not captured from cpsc. + +Basis: Project builtin manuals; LEFT, ASC, CHR, IS_NUM and numeric string conversions are extensions, not specified by this CIE guide. + +Trace: LEFT keeps two or zero bytes; ASCII A=65 and Z=90. Only 12.5 is a fully consumed nonempty number. Integer conversion preserves all 19 digits; REAL is observed only through equality. diff --git a/tests/i/string-extensions/program.cps b/tests/i/string-extensions/program.cps new file mode 100644 index 0000000..f3b4844 --- /dev/null +++ b/tests/i/string-extensions/program.cps @@ -0,0 +1,5 @@ +OUTPUT LEFT("abcd", 2), ":", LEFT("abcd", 0) +OUTPUT ASC('A'), ":", CHR(90) +OUTPUT IS_NUM("12.5"), ":", IS_NUM("12x"), ":", IS_NUM("") +OUTPUT NUM_TO_STR(9223372036854775807) +OUTPUT STR_TO_NUM("12.5") = 12.5 -- cgit v1.3.1-4-g156e