// A BODIED `abi(.compiler)` function is a compiler-domain function: the comptime // evaluator runs its sx body, but it is NEVER lowered into the shipped binary // (emit_llvm skips it, like an extern). Here `double` folds the `#run` const at // compile time; `main` only ever sees the folded constant, and no `double` symbol // exists in the binary. (Regression for the S3 step of the abi(.compiler) work — // see current/PLAN-COMPILER-VM.md.) #import "modules/std.sx"; double :: (x: i64) -> i64 abi(.compiler) { x * 2 } answer :: #run double(42); main :: () { print("answer = {}\n", answer); }