aboutsummaryrefslogtreecommitdiff
path: root/src/lj_cdata.c
diff options
context:
space:
mode:
authorMike Pall <mike>2025-11-27 17:45:17 +0100
committerMike Pall <mike>2025-11-27 17:45:17 +0100
commitf80b349d5490aa289b2925d297f3f3c618977570 (patch)
tree8d8fb0d2beb3e863592139d603ada63e5aa6ce77 /src/lj_cdata.c
parent3215838aa744d148e79a8ea0bd7c014e984302cb (diff)
downloadluajit-f80b349d5490aa289b2925d297f3f3c618977570.tar.gz
luajit-f80b349d5490aa289b2925d297f3f3c618977570.tar.bz2
luajit-f80b349d5490aa289b2925d297f3f3c618977570.zip
Unify Lua number to FFI integer conversions.
Phew. #1411
Diffstat (limited to 'src/lj_cdata.c')
-rw-r--r--src/lj_cdata.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/lj_cdata.c b/src/lj_cdata.c
index 3b48f76c..2dc56a80 100644
--- a/src/lj_cdata.c
+++ b/src/lj_cdata.c
@@ -133,12 +133,7 @@ collect_attrib:
133 idx = (ptrdiff_t)intV(key); 133 idx = (ptrdiff_t)intV(key);
134 goto integer_key; 134 goto integer_key;
135 } else if (tvisnum(key)) { /* Numeric key. */ 135 } else if (tvisnum(key)) { /* Numeric key. */
136#ifdef _MSC_VER 136 idx = lj_num2int_type(numV(key), ptrdiff_t);
137 /* Workaround for MSVC bug. */
138 volatile
139#endif
140 lua_Number n = numV(key);
141 idx = LJ_64 ? (ptrdiff_t)n : (ptrdiff_t)lj_num2int(n);
142 integer_key: 137 integer_key:
143 if (ctype_ispointer(ct->info)) { 138 if (ctype_ispointer(ct->info)) {
144 CTSize sz = lj_ctype_size(cts, ctype_cid(ct->info)); /* Element size. */ 139 CTSize sz = lj_ctype_size(cts, ctype_cid(ct->info)); /* Element size. */