fa57c1e4
c_runtime: 64-bit cdata fidelity tests (ra6 3l)
Adds the c_int64.Wide fixture (one singular field per 64-bit kind) plus an 18-test luatest group that round-trips each kind past 2^53 through the C runtime in both codegen modes. Confirms encode accepts both LuaJIT int64_t/uint64_t cdata and Lua numbers, and decode surfaces values >DBL_INT_MAX as cdata (matching msgpackffi / net.box / box.tuple / built-in protobuf convention). The C runtime already had the dispatch — to_int64_at / to_uint64_at flow through luaL_toint64 / luaL_touint64 for cdata inputs, and dec_push_one calls luaL_pushint64 / luaL_pushuint64 for every 64-bit kind. This change pins the behavior under acceptance. Closes tarantool-protobuf-awv (ra6 3l)
Eugene Blikh <bigbes@gmail.com> — 2026-05-23 11:17:19 UTC
Commit fa57c1e4df7ee308eada28378c7fba09752f4914 —
view raw patch
Parent(s):
6471b5d1
| File | Status | + | − |
|---|---|---|---|
.beads/interactions.jsonl
|
M | +2 | |
.beads/issues.jsonl
|
M | +1 | -1 |
examples/expected/full/c_int64/c_int64_pb.lua
|
A | +173 | |
examples/expected/runtime/c_int64/c_int64_pb.lua
|
A | +63 | |
test/c_runtime_int64_test.lua
|
A | +188 | |
test/proto/c_int64.proto
|
A | +22 |