From: Kirill Podoprigora Date: Fri, 30 Jun 2023 19:11:10 +0000 (+0300) Subject: gh-106267: Add type cast to generated code (#106289) X-Git-Tag: v3.13.0a1~1584 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2062e115017d8c33e74ba14adef2a255c344f747;p=thirdparty%2FPython%2Fcpython.git gh-106267: Add type cast to generated code (#106289) --- diff --git a/Python/executor_cases.c.h b/Python/executor_cases.c.h index ccef2736b712..546b3d9f50ac 100644 --- a/Python/executor_cases.c.h +++ b/Python/executor_cases.c.h @@ -187,7 +187,7 @@ case TO_BOOL_ALWAYS_TRUE: { PyObject *value = stack_pointer[-1]; PyObject *res; - uint32_t version = operand; + uint32_t version = (uint32_t)operand; #line 359 "Python/bytecodes.c" // This one is a bit weird, because we expect *some* failures: assert(version); diff --git a/Tools/cases_generator/generate_cases.py b/Tools/cases_generator/generate_cases.py index ff88b63d3bdd..2332d12c6c0c 100644 --- a/Tools/cases_generator/generate_cases.py +++ b/Tools/cases_generator/generate_cases.py @@ -520,7 +520,7 @@ class Instruction: f"{typ}{ceffect.name} = {func}(&next_instr[{active.offset}].cache);" ) else: - out.emit(f"{typ}{ceffect.name} = operand;") + out.emit(f"{typ}{ceffect.name} = ({typ.strip()})operand;") # Write the body, substituting a goto for ERROR_IF() and other stuff assert dedent <= 0