aboutsummaryrefslogtreecommitdiff
path: root/tests/ii/real/program.cps
diff options
context:
space:
mode:
author_ov4 <ov4@ov4.one>2026-10-16 20:53:55 +0800
committer_ov4 <ov4@ov4.one>2026-10-16 20:53:55 +0800
commitd19f9ddb866ac2415cbfe66966897a8efe8ddb63 (patch)
tree6be1a9a6e316e776a396813f7cb22c688287b21a /tests/ii/real/program.cps
parent5c00b8cd03cbfc516cce92229f3f4974d7549c24 (diff)
test(compiler): add seeded C++ differential tests across seven groups
Generate 10000 random records per group plus boundary inputs using a portable SHA-256 stream. Compare native and runner output independently. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Diffstat (limited to 'tests/ii/real/program.cps')
-rw-r--r--tests/ii/real/program.cps17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/ii/real/program.cps b/tests/ii/real/program.cps
new file mode 100644
index 0000000..57834e1
--- /dev/null
+++ b/tests/ii/real/program.cps
@@ -0,0 +1,17 @@
+FUNCTION Twice(Value : REAL) RETURNS REAL
+ RETURN Value * 2.0
+ENDFUNCTION
+DECLARE Count : INTEGER
+DECLARE Index : INTEGER
+DECLARE A : INTEGER
+DECLARE B : INTEGER
+DECLARE X : REAL
+DECLARE Y : REAL
+INPUT Count
+FOR Index <- 1 TO Count
+ INPUT A
+ INPUT B
+ X <- A / 8
+ Y <- B / 8
+ OUTPUT X < Y, ":", X = Y, ":", Twice(X) = (A / 4), ":", (X + Y) = ((A + B) / 8), ":", (X * Y) = ((A * B) / 64)
+NEXT Index