Nuitka-winsvc 2.2.3__cp311-cp311-win_amd64.whl → 2.3.2__cp311-cp311-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of Nuitka-winsvc might be problematic. Click here for more details.

Files changed (201) hide show
  1. {Nuitka_winsvc-2.2.3.dist-info → Nuitka_winsvc-2.3.2.dist-info}/METADATA +2 -1
  2. {Nuitka_winsvc-2.2.3.dist-info → Nuitka_winsvc-2.3.2.dist-info}/RECORD +201 -200
  3. nuitka/Bytecodes.py +4 -2
  4. nuitka/HardImportRegistry.py +1 -0
  5. nuitka/MainControl.py +16 -10
  6. nuitka/ModuleRegistry.py +15 -0
  7. nuitka/OptionParsing.py +30 -8
  8. nuitka/Options.py +106 -45
  9. nuitka/PostProcessing.py +9 -8
  10. nuitka/PythonVersions.py +2 -1
  11. nuitka/Serialization.py +47 -30
  12. nuitka/Version.py +1 -1
  13. nuitka/build/Backend.scons +46 -19
  14. nuitka/build/CCompilerVersion.scons +3 -3
  15. nuitka/build/Onefile.scons +4 -4
  16. nuitka/build/SconsCaching.py +3 -2
  17. nuitka/build/SconsCompilerSettings.py +18 -6
  18. nuitka/build/SconsInterface.py +28 -8
  19. nuitka/build/SconsUtils.py +9 -1
  20. nuitka/build/include/nuitka/allocator.h +58 -2
  21. nuitka/build/include/nuitka/compiled_frame.h +48 -13
  22. nuitka/build/include/nuitka/compiled_function.h +4 -0
  23. nuitka/build/include/nuitka/constants.h +6 -0
  24. nuitka/build/include/nuitka/exception_groups.h +6 -6
  25. nuitka/build/include/nuitka/exceptions.h +3 -3
  26. nuitka/build/include/nuitka/freelists.h +11 -0
  27. nuitka/build/include/nuitka/helper/dictionaries.h +5 -4
  28. nuitka/build/include/nuitka/helper/lists.h +5 -5
  29. nuitka/build/include/nuitka/helper/lists_generated.h +12 -12
  30. nuitka/build/include/nuitka/helper/sequences.h +6 -0
  31. nuitka/build/include/nuitka/helper/slices.h +14 -8
  32. nuitka/build/include/nuitka/helper/subscripts.h +1 -184
  33. nuitka/build/include/nuitka/helper/tuples.h +42 -33
  34. nuitka/build/include/nuitka/importing.h +5 -0
  35. nuitka/build/include/nuitka/prelude.h +49 -5
  36. nuitka/build/include/nuitka/safe_string_ops.h +1 -0
  37. nuitka/build/include/nuitka/threading.h +13 -10
  38. nuitka/build/static_src/CompiledAsyncgenType.c +19 -8
  39. nuitka/build/static_src/CompiledCellType.c +1 -1
  40. nuitka/build/static_src/CompiledCodeHelpers.c +18 -16
  41. nuitka/build/static_src/CompiledCoroutineType.c +23 -19
  42. nuitka/build/static_src/CompiledFrameType.c +46 -34
  43. nuitka/build/static_src/CompiledFunctionType.c +55 -34
  44. nuitka/build/static_src/CompiledGeneratorType.c +21 -19
  45. nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +127 -130
  46. nuitka/build/static_src/CompiledMethodType.c +15 -17
  47. nuitka/build/static_src/HelpersAllocator.c +71 -0
  48. nuitka/build/static_src/HelpersAttributes.c +1 -1
  49. nuitka/build/static_src/HelpersBuiltin.c +5 -5
  50. nuitka/build/static_src/HelpersBytes.c +2 -2
  51. nuitka/build/static_src/HelpersCalling.c +3 -0
  52. nuitka/build/static_src/HelpersCallingGenerated.c +952 -133
  53. nuitka/build/static_src/HelpersComparisonEq.c +329 -329
  54. nuitka/build/static_src/HelpersComparisonEqUtils.c +3 -1
  55. nuitka/build/static_src/HelpersComparisonGe.c +322 -322
  56. nuitka/build/static_src/HelpersComparisonGt.c +321 -321
  57. nuitka/build/static_src/HelpersComparisonLe.c +322 -322
  58. nuitka/build/static_src/HelpersComparisonLt.c +321 -321
  59. nuitka/build/static_src/HelpersComparisonNe.c +329 -329
  60. nuitka/build/static_src/HelpersConsole.c +96 -0
  61. nuitka/build/static_src/HelpersConstantsBlob.c +10 -6
  62. nuitka/build/static_src/HelpersDeepcopy.c +10 -8
  63. nuitka/build/static_src/HelpersDictionaries.c +17 -11
  64. nuitka/build/static_src/HelpersDictionariesGenerated.c +65 -29
  65. nuitka/build/static_src/HelpersExceptions.c +107 -9
  66. nuitka/build/static_src/HelpersFilesystemPaths.c +64 -4
  67. nuitka/build/static_src/HelpersFloats.c +20 -14
  68. nuitka/build/static_src/HelpersImport.c +1 -1
  69. nuitka/build/static_src/HelpersJitSources.c +1 -1
  70. nuitka/build/static_src/HelpersLists.c +29 -19
  71. nuitka/build/static_src/HelpersListsGenerated.c +24 -24
  72. nuitka/build/static_src/HelpersMatching.c +32 -5
  73. nuitka/build/static_src/HelpersOperationBinaryAdd.c +90 -63
  74. nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +4 -4
  75. nuitka/build/static_src/HelpersOperationBinaryBitand.c +33 -33
  76. nuitka/build/static_src/HelpersOperationBinaryBitor.c +33 -33
  77. nuitka/build/static_src/HelpersOperationBinaryBitxor.c +33 -33
  78. nuitka/build/static_src/HelpersOperationBinaryDivmod.c +24 -24
  79. nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +24 -24
  80. nuitka/build/static_src/HelpersOperationBinaryLshift.c +30 -30
  81. nuitka/build/static_src/HelpersOperationBinaryMatmult.c +7 -7
  82. nuitka/build/static_src/HelpersOperationBinaryMod.c +90 -90
  83. nuitka/build/static_src/HelpersOperationBinaryMult.c +64 -58
  84. nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +24 -24
  85. nuitka/build/static_src/HelpersOperationBinaryPow.c +27 -27
  86. nuitka/build/static_src/HelpersOperationBinaryRshift.c +30 -30
  87. nuitka/build/static_src/HelpersOperationBinarySub.c +24 -24
  88. nuitka/build/static_src/HelpersOperationBinaryTruediv.c +24 -24
  89. nuitka/build/static_src/HelpersOperationInplaceAdd.c +67 -49
  90. nuitka/build/static_src/HelpersOperationInplaceBitand.c +25 -25
  91. nuitka/build/static_src/HelpersOperationInplaceBitor.c +25 -25
  92. nuitka/build/static_src/HelpersOperationInplaceBitxor.c +25 -25
  93. nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +28 -28
  94. nuitka/build/static_src/HelpersOperationInplaceLshift.c +18 -18
  95. nuitka/build/static_src/HelpersOperationInplaceMatmult.c +10 -10
  96. nuitka/build/static_src/HelpersOperationInplaceMod.c +70 -70
  97. nuitka/build/static_src/HelpersOperationInplaceMult.c +33 -33
  98. nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +28 -28
  99. nuitka/build/static_src/HelpersOperationInplacePow.c +28 -28
  100. nuitka/build/static_src/HelpersOperationInplaceRshift.c +18 -18
  101. nuitka/build/static_src/HelpersOperationInplaceSub.c +28 -28
  102. nuitka/build/static_src/HelpersOperationInplaceTruediv.c +28 -28
  103. nuitka/build/static_src/HelpersRaising.c +10 -3
  104. nuitka/build/static_src/HelpersSafeStrings.c +14 -4
  105. nuitka/build/static_src/HelpersSlices.c +12 -5
  106. nuitka/build/static_src/HelpersStrings.c +1 -1
  107. nuitka/build/static_src/HelpersTuples.c +20 -15
  108. nuitka/build/static_src/InspectPatcher.c +74 -6
  109. nuitka/build/static_src/MainProgram.c +90 -25
  110. nuitka/build/static_src/MetaPathBasedLoader.c +81 -45
  111. nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +2 -2
  112. nuitka/build/static_src/OnefileBootstrap.c +16 -17
  113. nuitka/code_generation/CodeGeneration.py +5 -2
  114. nuitka/code_generation/ConstantCodes.py +2 -2
  115. nuitka/code_generation/DictCodes.py +2 -2
  116. nuitka/code_generation/GlobalConstants.py +5 -0
  117. nuitka/code_generation/GlobalsLocalsCodes.py +2 -2
  118. nuitka/code_generation/ListCodes.py +2 -2
  119. nuitka/code_generation/LocalsDictCodes.py +1 -1
  120. nuitka/code_generation/ModuleCodes.py +19 -0
  121. nuitka/code_generation/PackageResourceCodes.py +14 -0
  122. nuitka/code_generation/SliceCodes.py +3 -3
  123. nuitka/code_generation/SubscriptCodes.py +5 -13
  124. nuitka/code_generation/TupleCodes.py +1 -1
  125. nuitka/code_generation/c_types/CTypePyObjectPointers.py +7 -7
  126. nuitka/code_generation/templates/CodeTemplatesConstants.py +7 -5
  127. nuitka/code_generation/templates/CodeTemplatesLoader.py +2 -0
  128. nuitka/code_generation/templates/CodeTemplatesModules.py +80 -54
  129. nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +1 -1
  130. nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +59 -8
  131. nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +5 -5
  132. nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +2 -2
  133. nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +2 -2
  134. nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +57 -21
  135. nuitka/code_generation/templates_c/HelperImportHard.c.j2 +1 -1
  136. nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +5 -5
  137. nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +18 -18
  138. nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +11 -11
  139. nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +3 -3
  140. nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +3 -3
  141. nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +7 -7
  142. nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +3 -3
  143. nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +11 -11
  144. nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +7 -7
  145. nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +10 -10
  146. nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +1 -1
  147. nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +3 -3
  148. nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +4 -1
  149. nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +4 -1
  150. nuitka/finalizations/FinalizeMarkups.py +0 -18
  151. nuitka/freezer/DependsExe.py +9 -4
  152. nuitka/freezer/DllDependenciesMacOS.py +1 -1
  153. nuitka/freezer/DllDependenciesWin32.py +1 -1
  154. nuitka/freezer/ImportDetection.py +1 -0
  155. nuitka/freezer/IncludedDataFiles.py +13 -4
  156. nuitka/freezer/IncludedEntryPoints.py +16 -0
  157. nuitka/freezer/Onefile.py +0 -1
  158. nuitka/freezer/Standalone.py +38 -21
  159. nuitka/importing/ImportCache.py +3 -2
  160. nuitka/importing/Importing.py +16 -3
  161. nuitka/importing/StandardLibrary.py +4 -0
  162. nuitka/nodes/ChildrenHavingMixins.py +2 -0
  163. nuitka/nodes/ExpressionBasesGenerated.py +4 -0
  164. nuitka/nodes/HardImportNodesGenerated.py +83 -0
  165. nuitka/nodes/ModuleNodes.py +10 -2
  166. nuitka/nodes/OsSysNodes.py +16 -0
  167. nuitka/nodes/SubscriptNodes.py +3 -3
  168. nuitka/plugins/PluginBase.py +2 -0
  169. nuitka/plugins/standard/DataFilesPlugin.py +22 -1
  170. nuitka/plugins/standard/DillPlugin/DillPlugin.c +3 -3
  171. nuitka/plugins/standard/ImplicitImports.py +3 -0
  172. nuitka/plugins/standard/OptionsNannyPlugin.py +9 -41
  173. nuitka/plugins/standard/PkgResourcesPlugin.py +8 -2
  174. nuitka/plugins/standard/PySidePyQtPlugin.py +3 -0
  175. nuitka/plugins/standard/standard.nuitka-package.config.yml +28 -13
  176. nuitka/plugins/standard/stdlib2.nuitka-package.config.yml +2 -2
  177. nuitka/plugins/standard/stdlib3.nuitka-package.config.yml +7 -2
  178. nuitka/specs/HardImportSpecs.py +3 -0
  179. nuitka/specs/ParameterSpecs.py +26 -15
  180. nuitka/tools/general/find_module/FindModuleCode.py +3 -2
  181. nuitka/tools/specialize/CTypeDescriptions.py +11 -9
  182. nuitka/tools/testing/Common.py +12 -5
  183. nuitka/tools/testing/SearchModes.py +5 -1
  184. nuitka/tools/testing/run_nuitka_tests/__main__.py +37 -0
  185. nuitka/tools/watch/GitHub.py +1 -7
  186. nuitka/tree/Building.py +9 -6
  187. nuitka/tree/ReformulationMatchStatements.py +51 -14
  188. nuitka/tree/TreeHelpers.py +8 -0
  189. nuitka/utils/CStrings.py +7 -0
  190. nuitka/utils/Execution.py +10 -1
  191. nuitka/utils/FileOperations.py +21 -13
  192. nuitka/utils/Importing.py +24 -0
  193. nuitka/utils/ReExecute.py +12 -3
  194. nuitka/utils/SharedLibraries.py +26 -1
  195. nuitka/utils/Yaml.py +9 -1
  196. {Nuitka_winsvc-2.2.3.data → Nuitka_winsvc-2.3.2.data}/scripts/nuitka-run.bat +0 -0
  197. {Nuitka_winsvc-2.2.3.data → Nuitka_winsvc-2.3.2.data}/scripts/nuitka.bat +0 -0
  198. {Nuitka_winsvc-2.2.3.dist-info → Nuitka_winsvc-2.3.2.dist-info}/LICENSE.txt +0 -0
  199. {Nuitka_winsvc-2.2.3.dist-info → Nuitka_winsvc-2.3.2.dist-info}/WHEEL +0 -0
  200. {Nuitka_winsvc-2.2.3.dist-info → Nuitka_winsvc-2.3.2.dist-info}/entry_points.txt +0 -0
  201. {Nuitka_winsvc-2.2.3.dist-info → Nuitka_winsvc-2.3.2.dist-info}/top_level.txt +0 -0
@@ -90,7 +90,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_OBJECT_LON
90
90
  goto exit_binary_result_object;
91
91
  }
92
92
 
93
- Py_DECREF(x);
93
+ Py_DECREF_IMMORTAL(x);
94
94
  }
95
95
 
96
96
  if (slot2 != NULL) {
@@ -101,7 +101,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_OBJECT_LON
101
101
  goto exit_binary_result_object;
102
102
  }
103
103
 
104
- Py_DECREF(x);
104
+ Py_DECREF_IMMORTAL(x);
105
105
  }
106
106
 
107
107
  #if PYTHON_VERSION < 0x300
@@ -279,7 +279,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_LONG_OBJEC
279
279
  goto exit_binary_result_object;
280
280
  }
281
281
 
282
- Py_DECREF(x);
282
+ Py_DECREF_IMMORTAL(x);
283
283
  slot2 = NULL;
284
284
  }
285
285
  }
@@ -291,7 +291,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_LONG_OBJEC
291
291
  goto exit_binary_result_object;
292
292
  }
293
293
 
294
- Py_DECREF(x);
294
+ Py_DECREF_IMMORTAL(x);
295
295
  }
296
296
 
297
297
  if (slot2 != NULL) {
@@ -302,7 +302,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_LONG_OBJEC
302
302
  goto exit_binary_result_object;
303
303
  }
304
304
 
305
- Py_DECREF(x);
305
+ Py_DECREF_IMMORTAL(x);
306
306
  }
307
307
 
308
308
  #if PYTHON_VERSION < 0x300
@@ -524,7 +524,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_OBJECT_LO
524
524
  goto exit_binary_result_object;
525
525
  }
526
526
 
527
- Py_DECREF(x);
527
+ Py_DECREF_IMMORTAL(x);
528
528
  }
529
529
 
530
530
  if (slot2 != NULL) {
@@ -535,7 +535,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_OBJECT_LO
535
535
  goto exit_binary_result_object;
536
536
  }
537
537
 
538
- Py_DECREF(x);
538
+ Py_DECREF_IMMORTAL(x);
539
539
  }
540
540
 
541
541
  #if PYTHON_VERSION < 0x300
@@ -722,7 +722,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_LONG_OBJE
722
722
  goto exit_binary_result_object;
723
723
  }
724
724
 
725
- Py_DECREF(x);
725
+ Py_DECREF_IMMORTAL(x);
726
726
  slot2 = NULL;
727
727
  }
728
728
  }
@@ -734,7 +734,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_LONG_OBJE
734
734
  goto exit_binary_result_object;
735
735
  }
736
736
 
737
- Py_DECREF(x);
737
+ Py_DECREF_IMMORTAL(x);
738
738
  }
739
739
 
740
740
  if (slot2 != NULL) {
@@ -745,7 +745,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_LONG_OBJE
745
745
  goto exit_binary_result_object;
746
746
  }
747
747
 
748
- Py_DECREF(x);
748
+ Py_DECREF_IMMORTAL(x);
749
749
  }
750
750
 
751
751
  #if PYTHON_VERSION < 0x300
@@ -981,7 +981,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_OBJECT_INT
981
981
  goto exit_binary_result_object;
982
982
  }
983
983
 
984
- Py_DECREF(x);
984
+ Py_DECREF_IMMORTAL(x);
985
985
  }
986
986
 
987
987
  if (slot2 != NULL) {
@@ -992,7 +992,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_OBJECT_INT
992
992
  goto exit_binary_result_object;
993
993
  }
994
994
 
995
- Py_DECREF(x);
995
+ Py_DECREF_IMMORTAL(x);
996
996
  }
997
997
 
998
998
  #if PYTHON_VERSION < 0x300
@@ -1171,7 +1171,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_INT_OBJECT
1171
1171
  goto exit_binary_result_object;
1172
1172
  }
1173
1173
 
1174
- Py_DECREF(x);
1174
+ Py_DECREF_IMMORTAL(x);
1175
1175
  slot2 = NULL;
1176
1176
  }
1177
1177
  }
@@ -1183,7 +1183,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_INT_OBJECT
1183
1183
  goto exit_binary_result_object;
1184
1184
  }
1185
1185
 
1186
- Py_DECREF(x);
1186
+ Py_DECREF_IMMORTAL(x);
1187
1187
  }
1188
1188
 
1189
1189
  if (slot2 != NULL) {
@@ -1194,7 +1194,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_INT_OBJECT
1194
1194
  goto exit_binary_result_object;
1195
1195
  }
1196
1196
 
1197
- Py_DECREF(x);
1197
+ Py_DECREF_IMMORTAL(x);
1198
1198
  }
1199
1199
 
1200
1200
  #if PYTHON_VERSION < 0x300
@@ -1421,7 +1421,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_OBJECT_IN
1421
1421
  goto exit_binary_result_object;
1422
1422
  }
1423
1423
 
1424
- Py_DECREF(x);
1424
+ Py_DECREF_IMMORTAL(x);
1425
1425
  }
1426
1426
 
1427
1427
  if (slot2 != NULL) {
@@ -1432,7 +1432,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_OBJECT_IN
1432
1432
  goto exit_binary_result_object;
1433
1433
  }
1434
1434
 
1435
- Py_DECREF(x);
1435
+ Py_DECREF_IMMORTAL(x);
1436
1436
  }
1437
1437
 
1438
1438
  #if PYTHON_VERSION < 0x300
@@ -1619,7 +1619,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_INT_OBJEC
1619
1619
  goto exit_binary_result_object;
1620
1620
  }
1621
1621
 
1622
- Py_DECREF(x);
1622
+ Py_DECREF_IMMORTAL(x);
1623
1623
  slot2 = NULL;
1624
1624
  }
1625
1625
  }
@@ -1631,7 +1631,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_INT_OBJEC
1631
1631
  goto exit_binary_result_object;
1632
1632
  }
1633
1633
 
1634
- Py_DECREF(x);
1634
+ Py_DECREF_IMMORTAL(x);
1635
1635
  }
1636
1636
 
1637
1637
  if (slot2 != NULL) {
@@ -1642,7 +1642,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_BITXOR_NBOOL_INT_OBJEC
1642
1642
  goto exit_binary_result_object;
1643
1643
  }
1644
1644
 
1645
- Py_DECREF(x);
1645
+ Py_DECREF_IMMORTAL(x);
1646
1646
  }
1647
1647
 
1648
1648
  #if PYTHON_VERSION < 0x300
@@ -1909,7 +1909,7 @@ static PyObject *_BINARY_OPERATION_BITXOR_OBJECT_LONG_INT(PyObject *operand1, Py
1909
1909
  goto exit_binary_result_object;
1910
1910
  }
1911
1911
 
1912
- Py_DECREF(x);
1912
+ Py_DECREF_IMMORTAL(x);
1913
1913
  }
1914
1914
 
1915
1915
  // Statically recognized that coercion is not possible with these types
@@ -1958,7 +1958,7 @@ static nuitka_bool _BINARY_OPERATION_BITXOR_NBOOL_LONG_INT(PyObject *operand1, P
1958
1958
  goto exit_binary_result_object;
1959
1959
  }
1960
1960
 
1961
- Py_DECREF(x);
1961
+ Py_DECREF_IMMORTAL(x);
1962
1962
  }
1963
1963
 
1964
1964
  // Statically recognized that coercion is not possible with these types
@@ -2060,7 +2060,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_OBJECT_SET
2060
2060
  goto exit_binary_result_object;
2061
2061
  }
2062
2062
 
2063
- Py_DECREF(x);
2063
+ Py_DECREF_IMMORTAL(x);
2064
2064
  }
2065
2065
 
2066
2066
  if (slot2 != NULL) {
@@ -2071,7 +2071,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_OBJECT_SET
2071
2071
  goto exit_binary_result_object;
2072
2072
  }
2073
2073
 
2074
- Py_DECREF(x);
2074
+ Py_DECREF_IMMORTAL(x);
2075
2075
  }
2076
2076
 
2077
2077
  #if PYTHON_VERSION < 0x300
@@ -2204,7 +2204,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_SET_OBJECT
2204
2204
  goto exit_binary_result_object;
2205
2205
  }
2206
2206
 
2207
- Py_DECREF(x);
2207
+ Py_DECREF_IMMORTAL(x);
2208
2208
  slot2 = NULL;
2209
2209
  }
2210
2210
  }
@@ -2216,7 +2216,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_SET_OBJECT
2216
2216
  goto exit_binary_result_object;
2217
2217
  }
2218
2218
 
2219
- Py_DECREF(x);
2219
+ Py_DECREF_IMMORTAL(x);
2220
2220
  }
2221
2221
 
2222
2222
  if (slot2 != NULL) {
@@ -2227,7 +2227,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_BITXOR_OBJECT_SET_OBJECT
2227
2227
  goto exit_binary_result_object;
2228
2228
  }
2229
2229
 
2230
- Py_DECREF(x);
2230
+ Py_DECREF_IMMORTAL(x);
2231
2231
  }
2232
2232
 
2233
2233
  #if PYTHON_VERSION < 0x300
@@ -2403,7 +2403,7 @@ static PyObject *_BINARY_OPERATION_BITXOR_OBJECT_OBJECT_OBJECT(PyObject *operand
2403
2403
  goto exit_binary_result_object;
2404
2404
  }
2405
2405
 
2406
- Py_DECREF(x);
2406
+ Py_DECREF_IMMORTAL(x);
2407
2407
  slot2 = NULL;
2408
2408
  }
2409
2409
  }
@@ -2415,7 +2415,7 @@ static PyObject *_BINARY_OPERATION_BITXOR_OBJECT_OBJECT_OBJECT(PyObject *operand
2415
2415
  goto exit_binary_result_object;
2416
2416
  }
2417
2417
 
2418
- Py_DECREF(x);
2418
+ Py_DECREF_IMMORTAL(x);
2419
2419
  }
2420
2420
 
2421
2421
  if (slot2 != NULL) {
@@ -2426,7 +2426,7 @@ static PyObject *_BINARY_OPERATION_BITXOR_OBJECT_OBJECT_OBJECT(PyObject *operand
2426
2426
  goto exit_binary_result_object;
2427
2427
  }
2428
2428
 
2429
- Py_DECREF(x);
2429
+ Py_DECREF_IMMORTAL(x);
2430
2430
  }
2431
2431
 
2432
2432
  #if PYTHON_VERSION < 0x300
@@ -2599,7 +2599,7 @@ static nuitka_bool _BINARY_OPERATION_BITXOR_NBOOL_OBJECT_OBJECT(PyObject *operan
2599
2599
  goto exit_binary_result_object;
2600
2600
  }
2601
2601
 
2602
- Py_DECREF(x);
2602
+ Py_DECREF_IMMORTAL(x);
2603
2603
  slot2 = NULL;
2604
2604
  }
2605
2605
  }
@@ -2611,7 +2611,7 @@ static nuitka_bool _BINARY_OPERATION_BITXOR_NBOOL_OBJECT_OBJECT(PyObject *operan
2611
2611
  goto exit_binary_result_object;
2612
2612
  }
2613
2613
 
2614
- Py_DECREF(x);
2614
+ Py_DECREF_IMMORTAL(x);
2615
2615
  }
2616
2616
 
2617
2617
  if (slot2 != NULL) {
@@ -2622,7 +2622,7 @@ static nuitka_bool _BINARY_OPERATION_BITXOR_NBOOL_OBJECT_OBJECT(PyObject *operan
2622
2622
  goto exit_binary_result_object;
2623
2623
  }
2624
2624
 
2625
- Py_DECREF(x);
2625
+ Py_DECREF_IMMORTAL(x);
2626
2626
  }
2627
2627
 
2628
2628
  #if PYTHON_VERSION < 0x300
@@ -129,7 +129,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_INT
129
129
  goto exit_binary_result_object;
130
130
  }
131
131
 
132
- Py_DECREF(x);
132
+ Py_DECREF_IMMORTAL(x);
133
133
  }
134
134
 
135
135
  if (slot2 != NULL) {
@@ -140,7 +140,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_INT
140
140
  goto exit_binary_result_object;
141
141
  }
142
142
 
143
- Py_DECREF(x);
143
+ Py_DECREF_IMMORTAL(x);
144
144
  }
145
145
 
146
146
  #if PYTHON_VERSION < 0x300
@@ -351,7 +351,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_INT_OBJECT
351
351
  goto exit_binary_result_object;
352
352
  }
353
353
 
354
- Py_DECREF(x);
354
+ Py_DECREF_IMMORTAL(x);
355
355
  slot2 = NULL;
356
356
  }
357
357
  }
@@ -363,7 +363,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_INT_OBJECT
363
363
  goto exit_binary_result_object;
364
364
  }
365
365
 
366
- Py_DECREF(x);
366
+ Py_DECREF_IMMORTAL(x);
367
367
  }
368
368
 
369
369
  if (slot2 != NULL) {
@@ -374,7 +374,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_INT_OBJECT
374
374
  goto exit_binary_result_object;
375
375
  }
376
376
 
377
- Py_DECREF(x);
377
+ Py_DECREF_IMMORTAL(x);
378
378
  }
379
379
 
380
380
  #if PYTHON_VERSION < 0x300
@@ -627,7 +627,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_LON
627
627
  goto exit_binary_result_object;
628
628
  }
629
629
 
630
- Py_DECREF(x);
630
+ Py_DECREF_IMMORTAL(x);
631
631
  }
632
632
 
633
633
  if (slot2 != NULL) {
@@ -638,7 +638,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_LON
638
638
  goto exit_binary_result_object;
639
639
  }
640
640
 
641
- Py_DECREF(x);
641
+ Py_DECREF_IMMORTAL(x);
642
642
  }
643
643
 
644
644
  #if PYTHON_VERSION < 0x300
@@ -816,7 +816,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_LONG_OBJEC
816
816
  goto exit_binary_result_object;
817
817
  }
818
818
 
819
- Py_DECREF(x);
819
+ Py_DECREF_IMMORTAL(x);
820
820
  slot2 = NULL;
821
821
  }
822
822
  }
@@ -828,7 +828,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_LONG_OBJEC
828
828
  goto exit_binary_result_object;
829
829
  }
830
830
 
831
- Py_DECREF(x);
831
+ Py_DECREF_IMMORTAL(x);
832
832
  }
833
833
 
834
834
  if (slot2 != NULL) {
@@ -839,7 +839,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_LONG_OBJEC
839
839
  goto exit_binary_result_object;
840
840
  }
841
841
 
842
- Py_DECREF(x);
842
+ Py_DECREF_IMMORTAL(x);
843
843
  }
844
844
 
845
845
  #if PYTHON_VERSION < 0x300
@@ -1099,7 +1099,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_FLO
1099
1099
  goto exit_binary_result_object;
1100
1100
  }
1101
1101
 
1102
- Py_DECREF(x);
1102
+ Py_DECREF_IMMORTAL(x);
1103
1103
  }
1104
1104
 
1105
1105
  if (slot2 != NULL) {
@@ -1110,7 +1110,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_FLO
1110
1110
  goto exit_binary_result_object;
1111
1111
  }
1112
1112
 
1113
- Py_DECREF(x);
1113
+ Py_DECREF_IMMORTAL(x);
1114
1114
  }
1115
1115
 
1116
1116
  #if PYTHON_VERSION < 0x300
@@ -1323,7 +1323,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_FLOAT_OBJE
1323
1323
  goto exit_binary_result_object;
1324
1324
  }
1325
1325
 
1326
- Py_DECREF(x);
1326
+ Py_DECREF_IMMORTAL(x);
1327
1327
  slot2 = NULL;
1328
1328
  }
1329
1329
  }
@@ -1335,7 +1335,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_FLOAT_OBJE
1335
1335
  goto exit_binary_result_object;
1336
1336
  }
1337
1337
 
1338
- Py_DECREF(x);
1338
+ Py_DECREF_IMMORTAL(x);
1339
1339
  }
1340
1340
 
1341
1341
  if (slot2 != NULL) {
@@ -1346,7 +1346,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_DIVMOD_OBJECT_FLOAT_OBJE
1346
1346
  goto exit_binary_result_object;
1347
1347
  }
1348
1348
 
1349
- Py_DECREF(x);
1349
+ Py_DECREF_IMMORTAL(x);
1350
1350
  }
1351
1351
 
1352
1352
  #if PYTHON_VERSION < 0x300
@@ -1549,7 +1549,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_FLOAT_LONG(PyObject *operand1,
1549
1549
  goto exit_binary_result_object;
1550
1550
  }
1551
1551
 
1552
- Py_DECREF(x);
1552
+ Py_DECREF_IMMORTAL(x);
1553
1553
  }
1554
1554
 
1555
1555
  // Statically recognized that coercion is not possible with these types
@@ -1606,7 +1606,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_LONG_FLOAT(PyObject *operand1,
1606
1606
  goto exit_binary_result_object;
1607
1607
  }
1608
1608
 
1609
- Py_DECREF(x);
1609
+ Py_DECREF_IMMORTAL(x);
1610
1610
  }
1611
1611
 
1612
1612
  // Statically recognized that coercion is not possible with these types
@@ -1658,7 +1658,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_FLOAT_INT(PyObject *operand1, P
1658
1658
  goto exit_binary_result_object;
1659
1659
  }
1660
1660
 
1661
- Py_DECREF(x);
1661
+ Py_DECREF_IMMORTAL(x);
1662
1662
  }
1663
1663
 
1664
1664
  // Statically recognized that coercion is not possible with these types
@@ -1713,7 +1713,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_INT_FLOAT(PyObject *operand1, P
1713
1713
  goto exit_binary_result_object;
1714
1714
  }
1715
1715
 
1716
- Py_DECREF(x);
1716
+ Py_DECREF_IMMORTAL(x);
1717
1717
  }
1718
1718
 
1719
1719
  // Statically recognized that coercion is not possible with these types
@@ -1762,7 +1762,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_LONG_INT(PyObject *operand1, Py
1762
1762
  goto exit_binary_result_object;
1763
1763
  }
1764
1764
 
1765
- Py_DECREF(x);
1765
+ Py_DECREF_IMMORTAL(x);
1766
1766
  }
1767
1767
 
1768
1768
  // Statically recognized that coercion is not possible with these types
@@ -1817,7 +1817,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_INT_LONG(PyObject *operand1, Py
1817
1817
  goto exit_binary_result_object;
1818
1818
  }
1819
1819
 
1820
- Py_DECREF(x);
1820
+ Py_DECREF_IMMORTAL(x);
1821
1821
  }
1822
1822
 
1823
1823
  // Statically recognized that coercion is not possible with these types
@@ -2268,7 +2268,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_OBJECT(PyObject *operand
2268
2268
  goto exit_binary_result_object;
2269
2269
  }
2270
2270
 
2271
- Py_DECREF(x);
2271
+ Py_DECREF_IMMORTAL(x);
2272
2272
  slot2 = NULL;
2273
2273
  }
2274
2274
  }
@@ -2280,7 +2280,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_OBJECT(PyObject *operand
2280
2280
  goto exit_binary_result_object;
2281
2281
  }
2282
2282
 
2283
- Py_DECREF(x);
2283
+ Py_DECREF_IMMORTAL(x);
2284
2284
  }
2285
2285
 
2286
2286
  if (slot2 != NULL) {
@@ -2291,7 +2291,7 @@ static PyObject *_BINARY_OPERATION_DIVMOD_OBJECT_OBJECT_OBJECT(PyObject *operand
2291
2291
  goto exit_binary_result_object;
2292
2292
  }
2293
2293
 
2294
- Py_DECREF(x);
2294
+ Py_DECREF_IMMORTAL(x);
2295
2295
  }
2296
2296
 
2297
2297
  #if PYTHON_VERSION < 0x300
@@ -137,7 +137,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_I
137
137
  goto exit_binary_result_object;
138
138
  }
139
139
 
140
- Py_DECREF(x);
140
+ Py_DECREF_IMMORTAL(x);
141
141
  }
142
142
 
143
143
  if (slot2 != NULL) {
@@ -148,7 +148,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_I
148
148
  goto exit_binary_result_object;
149
149
  }
150
150
 
151
- Py_DECREF(x);
151
+ Py_DECREF_IMMORTAL(x);
152
152
  }
153
153
 
154
154
  #if PYTHON_VERSION < 0x300
@@ -369,7 +369,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_INT_OBJE
369
369
  goto exit_binary_result_object;
370
370
  }
371
371
 
372
- Py_DECREF(x);
372
+ Py_DECREF_IMMORTAL(x);
373
373
  slot2 = NULL;
374
374
  }
375
375
  }
@@ -381,7 +381,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_INT_OBJE
381
381
  goto exit_binary_result_object;
382
382
  }
383
383
 
384
- Py_DECREF(x);
384
+ Py_DECREF_IMMORTAL(x);
385
385
  }
386
386
 
387
387
  if (slot2 != NULL) {
@@ -392,7 +392,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_INT_OBJE
392
392
  goto exit_binary_result_object;
393
393
  }
394
394
 
395
- Py_DECREF(x);
395
+ Py_DECREF_IMMORTAL(x);
396
396
  }
397
397
 
398
398
  #if PYTHON_VERSION < 0x300
@@ -654,7 +654,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_L
654
654
  goto exit_binary_result_object;
655
655
  }
656
656
 
657
- Py_DECREF(x);
657
+ Py_DECREF_IMMORTAL(x);
658
658
  }
659
659
 
660
660
  if (slot2 != NULL) {
@@ -665,7 +665,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_L
665
665
  goto exit_binary_result_object;
666
666
  }
667
667
 
668
- Py_DECREF(x);
668
+ Py_DECREF_IMMORTAL(x);
669
669
  }
670
670
 
671
671
  #if PYTHON_VERSION < 0x300
@@ -844,7 +844,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_LONG_OBJ
844
844
  goto exit_binary_result_object;
845
845
  }
846
846
 
847
- Py_DECREF(x);
847
+ Py_DECREF_IMMORTAL(x);
848
848
  slot2 = NULL;
849
849
  }
850
850
  }
@@ -856,7 +856,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_LONG_OBJ
856
856
  goto exit_binary_result_object;
857
857
  }
858
858
 
859
- Py_DECREF(x);
859
+ Py_DECREF_IMMORTAL(x);
860
860
  }
861
861
 
862
862
  if (slot2 != NULL) {
@@ -867,7 +867,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_LONG_OBJ
867
867
  goto exit_binary_result_object;
868
868
  }
869
869
 
870
- Py_DECREF(x);
870
+ Py_DECREF_IMMORTAL(x);
871
871
  }
872
872
 
873
873
  #if PYTHON_VERSION < 0x300
@@ -1119,7 +1119,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_F
1119
1119
  goto exit_binary_result_object;
1120
1120
  }
1121
1121
 
1122
- Py_DECREF(x);
1122
+ Py_DECREF_IMMORTAL(x);
1123
1123
  }
1124
1124
 
1125
1125
  if (slot2 != NULL) {
@@ -1130,7 +1130,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_F
1130
1130
  goto exit_binary_result_object;
1131
1131
  }
1132
1132
 
1133
- Py_DECREF(x);
1133
+ Py_DECREF_IMMORTAL(x);
1134
1134
  }
1135
1135
 
1136
1136
  #if PYTHON_VERSION < 0x300
@@ -1336,7 +1336,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_FLOAT_OB
1336
1336
  goto exit_binary_result_object;
1337
1337
  }
1338
1338
 
1339
- Py_DECREF(x);
1339
+ Py_DECREF_IMMORTAL(x);
1340
1340
  slot2 = NULL;
1341
1341
  }
1342
1342
  }
@@ -1348,7 +1348,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_FLOAT_OB
1348
1348
  goto exit_binary_result_object;
1349
1349
  }
1350
1350
 
1351
- Py_DECREF(x);
1351
+ Py_DECREF_IMMORTAL(x);
1352
1352
  }
1353
1353
 
1354
1354
  if (slot2 != NULL) {
@@ -1359,7 +1359,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_FLOORDIV_OBJECT_FLOAT_OB
1359
1359
  goto exit_binary_result_object;
1360
1360
  }
1361
1361
 
1362
- Py_DECREF(x);
1362
+ Py_DECREF_IMMORTAL(x);
1363
1363
  }
1364
1364
 
1365
1365
  #if PYTHON_VERSION < 0x300
@@ -1554,7 +1554,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_FLOAT_LONG(PyObject *operand1
1554
1554
  goto exit_binary_result_object;
1555
1555
  }
1556
1556
 
1557
- Py_DECREF(x);
1557
+ Py_DECREF_IMMORTAL(x);
1558
1558
  }
1559
1559
 
1560
1560
  // Statically recognized that coercion is not possible with these types
@@ -1611,7 +1611,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_LONG_FLOAT(PyObject *operand1
1611
1611
  goto exit_binary_result_object;
1612
1612
  }
1613
1613
 
1614
- Py_DECREF(x);
1614
+ Py_DECREF_IMMORTAL(x);
1615
1615
  }
1616
1616
 
1617
1617
  // Statically recognized that coercion is not possible with these types
@@ -1663,7 +1663,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_FLOAT_INT(PyObject *operand1,
1663
1663
  goto exit_binary_result_object;
1664
1664
  }
1665
1665
 
1666
- Py_DECREF(x);
1666
+ Py_DECREF_IMMORTAL(x);
1667
1667
  }
1668
1668
 
1669
1669
  // Statically recognized that coercion is not possible with these types
@@ -1718,7 +1718,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_INT_FLOAT(PyObject *operand1,
1718
1718
  goto exit_binary_result_object;
1719
1719
  }
1720
1720
 
1721
- Py_DECREF(x);
1721
+ Py_DECREF_IMMORTAL(x);
1722
1722
  }
1723
1723
 
1724
1724
  // Statically recognized that coercion is not possible with these types
@@ -1767,7 +1767,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_LONG_INT(PyObject *operand1,
1767
1767
  goto exit_binary_result_object;
1768
1768
  }
1769
1769
 
1770
- Py_DECREF(x);
1770
+ Py_DECREF_IMMORTAL(x);
1771
1771
  }
1772
1772
 
1773
1773
  // Statically recognized that coercion is not possible with these types
@@ -1822,7 +1822,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_INT_LONG(PyObject *operand1,
1822
1822
  goto exit_binary_result_object;
1823
1823
  }
1824
1824
 
1825
- Py_DECREF(x);
1825
+ Py_DECREF_IMMORTAL(x);
1826
1826
  }
1827
1827
 
1828
1828
  // Statically recognized that coercion is not possible with these types
@@ -2285,7 +2285,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_OBJECT(PyObject *opera
2285
2285
  goto exit_binary_result_object;
2286
2286
  }
2287
2287
 
2288
- Py_DECREF(x);
2288
+ Py_DECREF_IMMORTAL(x);
2289
2289
  slot2 = NULL;
2290
2290
  }
2291
2291
  }
@@ -2297,7 +2297,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_OBJECT(PyObject *opera
2297
2297
  goto exit_binary_result_object;
2298
2298
  }
2299
2299
 
2300
- Py_DECREF(x);
2300
+ Py_DECREF_IMMORTAL(x);
2301
2301
  }
2302
2302
 
2303
2303
  if (slot2 != NULL) {
@@ -2308,7 +2308,7 @@ static PyObject *_BINARY_OPERATION_FLOORDIV_OBJECT_OBJECT_OBJECT(PyObject *opera
2308
2308
  goto exit_binary_result_object;
2309
2309
  }
2310
2310
 
2311
- Py_DECREF(x);
2311
+ Py_DECREF_IMMORTAL(x);
2312
2312
  }
2313
2313
 
2314
2314
  #if PYTHON_VERSION < 0x300