The other place where truncation (already) occurs is "outside" Lua,
in the API, when the C code uses things like lua_checkinteger. This
is the only place where the change would affect compatibility:
string.sub("abc", 2.3) currently behaves in a non-specified way
(although most certainly it is equivalent to string.sub("abc", 2)
and we are afraid some programmers assume this behavior); current
5.3w specifies that 2.3 should be truncated to 2, while with this new
proposal Lua would raise an error.
Are you saying that a float value would return an error, or a non-integral value would return an error?