Explorar o código

Fix EncodeT assignment in make_virtuals.py

• Adding EncodeT type casting allows generated code to support enum classes.
Thaddeus Crews hai 1 ano
pai
achega
c9a4086da6
Modificáronse 1 ficheiros con 3 adicións e 1 borrados
  1. 3 1
      core/object/make_virtuals.py

+ 3 - 1
core/object/make_virtuals.py

@@ -121,7 +121,9 @@ def generate_version(argcount, const=False, returns=False):
         callargtext += f"m_type{i + 1} arg{i + 1}"
         callsiargs += f"Variant(arg{i + 1})"
         callsiargptrs += f"&vargs[{i}]"
-        callptrargs += f"PtrToArg<m_type{i + 1}>::EncodeT argval{i + 1} = arg{i + 1};\\\n"
+        callptrargs += (
+            f"PtrToArg<m_type{i + 1}>::EncodeT argval{i + 1} = (PtrToArg<m_type{i + 1}>::EncodeT)arg{i + 1};\\\n"
+        )
         callptrargsptr += f"&argval{i + 1}"
         if method_info:
             method_info += "\\\n\t\t"