I've found a ... strange feature in LuaJIT.
It appears some cdata values are allowed to be concatenated, but the result
is random:
= 1LL .. 2LL1077850264LL
= bit.tohex(1LL .. 2LL)fffffffb403f7700
= 1LL .. 2LL4629545966695838599LL
= 1LL .. 2LL112LL
= 1LL .. 2LL202LL
= 1LL .. 2LL1077869360LL
= 1LL .. 2LL42LL
= 1LL .. 2LL1077894976LL
= 0LL .. 0LL4629474467297361920LL
= 0LL .. 0LL4629529259273053269LL
= 0LL .. 0LL585LL
= 0LL .. 0LL33LL
= 0LL .. 0LL1077856728LL
= 0LL .. 0LL0LL
= 0LL .. 0LL1077902088LL
= 0LL .. 0LL136LL
= 0LL .. 0LL178114797612LL
= 0LL .. 0LL1077850296LL
= 0LL .. 0LL1077850296LL
= 0LL .. 0LL1077850296LL
= 0LL .. 0LL1077850376LL
= 0LL .. 0LL0LL
= 0LL .. 0LL0LL
xx, yy = "abc", "def" -- anchorsstdin:1: attempt to concatenate 'const char *' and 'const char *'
x=ffi.new("const char *", xx)
y=ffi.new("const char *", yy)
z=x..y
z=x.."def"stdin:1: attempt to concatenate 'const char *' and 'string'