From 916e43375363b3f255368edd670f4e77c16015ef Mon Sep 17 00:00:00 2001 From: veclavtalica Date: Tue, 28 Jan 2025 23:58:13 +0300 Subject: [PATCH] /apps/twnlua: no warnings --- apps/twnlua/bindgen.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/apps/twnlua/bindgen.py b/apps/twnlua/bindgen.py index 50130a5..ed1662e 100755 --- a/apps/twnlua/bindgen.py +++ b/apps/twnlua/bindgen.py @@ -11,7 +11,8 @@ api = json.loads(api_source) def default(parameter): basetype = parameter["type"].rsplit(' *', 1)[0] if parameter["type"] == "float": - return parameter["default"] + s = str(parameter["default"]) + return s + 'f' if '.' in s else s + '.f' elif parameter["type"] == "bool": return "true" if parameter["default"] else "false" elif parameter["type"] == "char *": @@ -51,7 +52,7 @@ def from_table(typedesc, variable, indent = 0): for field in typedesc["fields"]: binding += ' ' * indent + "lua_getfield(L, -1, \"%s\");\n" % field["name"] if field["type"] == "float" or field["type"] == "uint8_t": - binding += ' ' * indent + "%s = (%s)lua_tonumber(L, -1);\n" % (variable + ".%s" % field["name"], field["type"]) + binding += ' ' * indent + "%s = (%s)(lua_tonumber(L, -1));\n" % (variable + ".%s" % field["name"], field["type"]) elif field["type"] == "bool": binding += ' ' * indent + "%s = lua_toboolean(L, -1);\n" % (variable + ".%s" % field["name"]) elif field["type"] in api["types"]: @@ -92,10 +93,10 @@ for procedure, procedure_desc in api["procedures"].items(): if parameter["type"] == "float": if "default" in parameter: binding += " int is_%s_num;\n" % parameter["name"] - binding += " %s = (float)lua_tonumberx(L, -1, &is_%s_num);\n" % (parameter["name"], parameter["name"]); + binding += " %s = (float)(lua_tonumberx(L, -1, &is_%s_num));\n" % (parameter["name"], parameter["name"]); binding += " if (!is_%s_num) %s = %s;\n" % (parameter["name"], parameter["name"], default(parameter)) else: - binding += " %s = (float)lua_tonumber(L, -1);\n" % (parameter["name"]); + binding += " %s = (float)(lua_tonumber(L, -1));\n" % (parameter["name"]); elif parameter["type"] == "bool": binding += " %s = lua_toboolean(L, -1);\n" % (parameter["name"]); elif parameter["type"] == "char *":