Nuitka-winsvc 1.8__cp311-cp311-win_amd64.whl → 2.5.1__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.
- Nuitka_winsvc-1.8.data/scripts/nuitka-run.bat → Nuitka_winsvc-2.5.1.data/scripts/nuitka-run.cmd +9 -9
- Nuitka_winsvc-1.8.data/scripts/nuitka.bat → Nuitka_winsvc-2.5.1.data/scripts/nuitka.cmd +15 -15
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/METADATA +5 -3
- Nuitka_winsvc-2.5.1.dist-info/RECORD +977 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/WHEEL +1 -1
- nuitka/Builtins.py +49 -17
- nuitka/BytecodeCaching.py +24 -20
- nuitka/Bytecodes.py +23 -19
- nuitka/CacheCleanup.py +28 -23
- nuitka/Constants.py +19 -17
- nuitka/Errors.py +23 -17
- nuitka/HardImportRegistry.py +408 -0
- nuitka/MainControl.py +209 -116
- nuitka/ModuleRegistry.py +83 -20
- nuitka/OptionParsing.py +467 -221
- nuitka/Options.py +701 -225
- nuitka/OutputDirectories.py +47 -23
- nuitka/PostProcessing.py +133 -79
- nuitka/Progress.py +73 -24
- nuitka/PythonFlavors.py +141 -32
- nuitka/PythonOperators.py +18 -17
- nuitka/PythonVersions.py +107 -19
- nuitka/Serialization.py +70 -55
- nuitka/SourceCodeReferences.py +19 -17
- nuitka/Tracing.py +176 -70
- nuitka/TreeXML.py +31 -26
- nuitka/Variables.py +39 -41
- nuitka/Version.py +22 -8
- nuitka/__init__.py +5 -4
- nuitka/__main__.py +95 -29
- nuitka/__past__.py +44 -34
- nuitka/build/Backend.scons +243 -141
- nuitka/build/CCompilerVersion.scons +45 -31
- nuitka/build/DataComposerInterface.py +20 -17
- nuitka/build/Onefile.scons +56 -54
- nuitka/build/SconsCaching.py +105 -92
- nuitka/build/SconsCompilerSettings.py +167 -68
- nuitka/build/SconsHacks.py +25 -19
- nuitka/build/SconsInterface.py +155 -54
- nuitka/build/SconsProgress.py +19 -18
- nuitka/build/SconsSpawn.py +62 -33
- nuitka/build/SconsUtils.py +152 -55
- nuitka/build/__init__.py +5 -4
- nuitka/build/include/nuitka/allocator.h +228 -22
- nuitka/build/include/nuitka/builtins.h +17 -17
- nuitka/build/include/nuitka/calling.h +24 -24
- nuitka/build/include/nuitka/checkers.h +17 -18
- nuitka/build/include/nuitka/checksum_tools.h +14 -19
- nuitka/build/include/nuitka/compiled_asyncgen.h +28 -25
- nuitka/build/include/nuitka/compiled_cell.h +33 -18
- nuitka/build/include/nuitka/compiled_coroutine.h +18 -18
- nuitka/build/include/nuitka/compiled_frame.h +93 -54
- nuitka/build/include/nuitka/compiled_function.h +42 -20
- nuitka/build/include/nuitka/compiled_generator.h +24 -18
- nuitka/build/include/nuitka/compiled_method.h +17 -18
- nuitka/build/include/nuitka/constants.h +35 -18
- nuitka/build/include/nuitka/constants_blob.h +17 -17
- nuitka/build/include/nuitka/debug_settings.h +60 -0
- nuitka/build/include/nuitka/environment_variables.h +30 -0
- nuitka/build/include/nuitka/environment_variables_system.h +45 -0
- nuitka/build/include/nuitka/exception_groups.h +23 -26
- nuitka/build/include/nuitka/exceptions.h +717 -171
- nuitka/build/include/nuitka/filesystem_paths.h +26 -20
- nuitka/build/include/nuitka/freelists.h +38 -18
- nuitka/build/include/nuitka/helper/attributes.h +24 -22
- nuitka/build/include/nuitka/helper/boolean.h +17 -17
- nuitka/build/include/nuitka/helper/bytearrays.h +17 -17
- nuitka/build/include/nuitka/helper/bytes.h +14 -15
- nuitka/build/include/nuitka/helper/calling_generated.h +69 -69
- nuitka/build/include/nuitka/helper/comparisons_dual_eq.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_ge.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_gt.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_le.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_lt.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_ne.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_eq.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_ge.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_gt.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_le.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_lt.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_ne.h +17 -17
- nuitka/build/include/nuitka/helper/complex.h +17 -17
- nuitka/build/include/nuitka/helper/dictionaries.h +89 -51
- nuitka/build/include/nuitka/helper/floats.h +17 -18
- nuitka/build/include/nuitka/helper/import_hard.h +25 -17
- nuitka/build/include/nuitka/helper/indexes.h +17 -18
- nuitka/build/include/nuitka/helper/ints.h +115 -54
- nuitka/build/include/nuitka/helper/iterators.h +99 -51
- nuitka/build/include/nuitka/helper/lists.h +26 -24
- nuitka/build/include/nuitka/helper/lists_generated.h +22 -22
- nuitka/build/include/nuitka/helper/mappings.h +17 -18
- nuitka/build/include/nuitka/helper/operations.h +20 -17
- nuitka/build/include/nuitka/helper/operations_binary_add.h +23 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitand.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitxor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_divmod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_dual_add.h +34 -0
- nuitka/build/include/nuitka/helper/operations_binary_floordiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_lshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_matmult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_mod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_mult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_olddiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_pow.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_rshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_sub.h +23 -17
- nuitka/build/include/nuitka/helper/operations_binary_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_builtin_types.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_add.h +20 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitand.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitxor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_floordiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_lshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_matmult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_mod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_mult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_olddiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_pow.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_rshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_sub.h +20 -17
- nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/raising.h +68 -37
- nuitka/build/include/nuitka/helper/rangeobjects.h +17 -17
- nuitka/build/include/nuitka/helper/richcomparisons.h +21 -14
- nuitka/build/include/nuitka/helper/sequences.h +19 -13
- nuitka/build/include/nuitka/helper/sets.h +11 -12
- nuitka/build/include/nuitka/helper/slices.h +31 -25
- nuitka/build/include/nuitka/helper/strings.h +16 -17
- nuitka/build/include/nuitka/helper/subscripts.h +18 -201
- nuitka/build/include/nuitka/helper/tuples.h +64 -52
- nuitka/build/include/nuitka/helpers.h +50 -22
- nuitka/build/include/nuitka/importing.h +28 -21
- nuitka/build/include/nuitka/jit_sources.h +25 -0
- nuitka/build/include/nuitka/prelude.h +163 -71
- nuitka/build/include/nuitka/printing.h +29 -22
- nuitka/build/include/nuitka/python_pgo.h +19 -18
- nuitka/build/include/nuitka/safe_string_ops.h +20 -18
- nuitka/build/include/nuitka/threading.h +45 -32
- nuitka/build/include/nuitka/tracing.h +28 -18
- nuitka/build/include/nuitka/type_aliases.h +30 -0
- nuitka/build/include/nuitka/unfreezing.h +29 -23
- nuitka/build/inline_copy/bin/scons.py +14 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/ListVariable.py +6 -6
- nuitka/build/inline_copy/pkg_resources/pkg_resources/__init__.py +0 -3
- nuitka/build/inline_copy/python_hacl/LICENSE.txt +201 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_MD5.c +1430 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_MD5.h +66 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA1.c +463 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA1.h +66 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA2.c +1273 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA2.h +204 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA3.c +734 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA3.h +131 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Streaming_Types.h +83 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/FStar_UInt128_Verified.h +346 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/FStar_UInt_8_16_32_64.h +107 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/fstar_uint128_struct_endianness.h +68 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/internal/target.h +293 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/lowstar_endianness.h +231 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/types.h +14 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_MD5.h +56 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA1.h +56 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA2.h +164 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA3.h +65 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/python_hacl_namespaces.h +89 -0
- nuitka/build/inline_copy/stubgen/astunparse.py +938 -0
- nuitka/build/inline_copy/stubgen/six.py +998 -0
- nuitka/build/inline_copy/stubgen/stubgen.py +307 -0
- nuitka/build/inline_copy/tqdm/tqdm/__init__.py +2 -2
- nuitka/build/inline_copy/tqdm/tqdm/_monitor.py +4 -1
- nuitka/build/inline_copy/tqdm/tqdm/utils.py +14 -8
- nuitka/build/inline_copy/tqdm/tqdm/version.py +1 -8
- nuitka/build/inline_copy/zlib/LICENSE +22 -0
- nuitka/build/inline_copy/zlib/crc32.c +1049 -0
- nuitka/build/inline_copy/zlib/crc32.h +9446 -0
- nuitka/build/inline_copy/zlib/zconf.h +551 -0
- nuitka/build/inline_copy/zlib/zlib.h +1938 -0
- nuitka/build/inline_copy/zlib/zutil.h +275 -0
- nuitka/build/static_src/CompiledAsyncgenType.c +221 -221
- nuitka/build/static_src/CompiledCellType.c +69 -44
- nuitka/build/static_src/CompiledCodeHelpers.c +276 -159
- nuitka/build/static_src/CompiledCoroutineType.c +229 -226
- nuitka/build/static_src/CompiledFrameType.c +323 -138
- nuitka/build/static_src/CompiledFunctionType.c +547 -231
- nuitka/build/static_src/CompiledGeneratorType.c +416 -290
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +593 -228
- nuitka/build/static_src/CompiledMethodType.c +91 -82
- nuitka/build/static_src/HelpersAllocator.c +352 -45
- nuitka/build/static_src/HelpersAttributes.c +30 -72
- nuitka/build/static_src/HelpersBuiltin.c +65 -46
- nuitka/build/static_src/HelpersBuiltinTypeMethods.c +17 -17
- nuitka/build/static_src/HelpersBytes.c +19 -20
- nuitka/build/static_src/HelpersCalling.c +40 -37
- nuitka/build/static_src/HelpersCallingGenerated.c +1061 -242
- nuitka/build/static_src/HelpersChecksumTools.c +35 -21
- nuitka/build/static_src/HelpersClasses.c +17 -17
- nuitka/build/static_src/HelpersComparisonDualEq.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualGe.c +121 -0
- nuitka/build/static_src/HelpersComparisonDualGt.c +121 -0
- nuitka/build/static_src/HelpersComparisonDualLe.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualLt.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualNe.c +121 -0
- nuitka/build/static_src/HelpersComparisonEq.c +536 -496
- nuitka/build/static_src/HelpersComparisonEqUtils.c +22 -19
- nuitka/build/static_src/HelpersComparisonGe.c +531 -501
- nuitka/build/static_src/HelpersComparisonGt.c +530 -500
- nuitka/build/static_src/HelpersComparisonLe.c +531 -501
- nuitka/build/static_src/HelpersComparisonLt.c +530 -500
- nuitka/build/static_src/HelpersComparisonNe.c +538 -496
- nuitka/build/static_src/HelpersConsole.c +122 -0
- nuitka/build/static_src/HelpersConstantsBlob.c +550 -521
- nuitka/build/static_src/HelpersDeepcopy.c +33 -33
- nuitka/build/static_src/HelpersDictionaries.c +232 -63
- nuitka/build/static_src/HelpersDictionariesGenerated.c +130 -127
- nuitka/build/static_src/HelpersDumpBacktraces.c +63 -0
- nuitka/build/static_src/HelpersEnvironmentVariables.c +65 -0
- nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +93 -0
- nuitka/build/static_src/HelpersExceptions.c +147 -62
- nuitka/build/static_src/HelpersFiles.c +116 -22
- nuitka/build/static_src/HelpersFilesystemPaths.c +292 -181
- nuitka/build/static_src/HelpersFloats.c +37 -31
- nuitka/build/static_src/HelpersHeapStorage.c +21 -17
- nuitka/build/static_src/HelpersImport.c +61 -29
- nuitka/build/static_src/HelpersImportHard.c +74 -61
- nuitka/build/static_src/HelpersJitSources.c +46 -0
- nuitka/build/static_src/HelpersLists.c +237 -58
- nuitka/build/static_src/HelpersListsGenerated.c +41 -41
- nuitka/build/static_src/HelpersMappings.c +17 -17
- nuitka/build/static_src/HelpersMatching.c +137 -51
- nuitka/build/static_src/HelpersOperationBinaryAdd.c +397 -152
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +102 -52
- nuitka/build/static_src/HelpersOperationBinaryBitand.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryBitor.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryBitxor.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryDivmod.c +49 -43
- nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryDualAdd.c +172 -0
- nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +55 -49
- nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +20 -21
- nuitka/build/static_src/HelpersOperationBinaryLshift.c +83 -83
- nuitka/build/static_src/HelpersOperationBinaryMatmult.c +25 -24
- nuitka/build/static_src/HelpersOperationBinaryMod.c +129 -117
- nuitka/build/static_src/HelpersOperationBinaryMult.c +98 -82
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +33 -30
- nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +55 -49
- nuitka/build/static_src/HelpersOperationBinaryPow.c +68 -68
- nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +12 -12
- nuitka/build/static_src/HelpersOperationBinaryRshift.c +51 -51
- nuitka/build/static_src/HelpersOperationBinarySub.c +309 -88
- nuitka/build/static_src/HelpersOperationBinaryTruediv.c +49 -43
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +333 -163
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +24 -22
- nuitka/build/static_src/HelpersOperationInplaceBitand.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceBitor.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceBitxor.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +73 -68
- nuitka/build/static_src/HelpersOperationInplaceLshift.c +64 -64
- nuitka/build/static_src/HelpersOperationInplaceMatmult.c +38 -37
- nuitka/build/static_src/HelpersOperationInplaceMod.c +145 -140
- nuitka/build/static_src/HelpersOperationInplaceMult.c +89 -84
- nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +73 -68
- nuitka/build/static_src/HelpersOperationInplacePow.c +82 -82
- nuitka/build/static_src/HelpersOperationInplaceRshift.c +48 -48
- nuitka/build/static_src/HelpersOperationInplaceSub.c +275 -122
- nuitka/build/static_src/HelpersOperationInplaceTruediv.c +68 -63
- nuitka/build/static_src/HelpersProfiling.c +25 -24
- nuitka/build/static_src/HelpersPythonPgo.c +22 -22
- nuitka/build/static_src/HelpersRaising.c +296 -283
- nuitka/build/static_src/HelpersSafeStrings.c +34 -22
- nuitka/build/static_src/HelpersSequences.c +18 -19
- nuitka/build/static_src/HelpersSlices.c +29 -23
- nuitka/build/static_src/HelpersStrings.c +235 -38
- nuitka/build/static_src/HelpersTuples.c +46 -34
- nuitka/build/static_src/HelpersTypes.c +166 -25
- nuitka/build/static_src/InspectPatcher.c +108 -27
- nuitka/build/static_src/MainProgram.c +464 -280
- nuitka/build/static_src/MetaPathBasedLoader.c +381 -257
- nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +39 -26
- nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +17 -18
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +227 -29
- nuitka/build/static_src/OnefileBootstrap.c +281 -164
- nuitka/build/static_src/OnefileSplashScreen.cpp +51 -27
- nuitka/code_generation/AsyncgenCodes.py +21 -23
- nuitka/code_generation/AttributeCodes.py +31 -27
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +290 -184
- nuitka/code_generation/BranchCodes.py +19 -17
- nuitka/code_generation/BuiltinCodes.py +29 -18
- nuitka/code_generation/CallCodes.py +35 -33
- nuitka/code_generation/ClassCodes.py +19 -17
- nuitka/code_generation/CodeGeneration.py +61 -28
- nuitka/code_generation/CodeHelperSelection.py +20 -18
- nuitka/code_generation/CodeHelpers.py +28 -21
- nuitka/code_generation/CodeObjectCodes.py +36 -26
- nuitka/code_generation/ComparisonCodes.py +51 -22
- nuitka/code_generation/ComparisonHelperDefinitions.py +42 -25
- nuitka/code_generation/ConditionalCodes.py +19 -17
- nuitka/code_generation/ConstantCodes.py +82 -28
- nuitka/code_generation/Contexts.py +180 -42
- nuitka/code_generation/CoroutineCodes.py +21 -23
- nuitka/code_generation/CtypesCodes.py +19 -17
- nuitka/code_generation/DictCodes.py +28 -26
- nuitka/code_generation/Emission.py +21 -18
- nuitka/code_generation/ErrorCodes.py +57 -79
- nuitka/code_generation/EvalCodes.py +24 -20
- nuitka/code_generation/ExceptionCodes.py +182 -104
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +45 -27
- nuitka/code_generation/ExpressionCodes.py +19 -17
- nuitka/code_generation/FrameCodes.py +28 -31
- nuitka/code_generation/FunctionCodes.py +26 -27
- nuitka/code_generation/GeneratorCodes.py +25 -26
- nuitka/code_generation/GlobalConstants.py +51 -25
- nuitka/code_generation/GlobalsLocalsCodes.py +23 -21
- nuitka/code_generation/IdCodes.py +19 -17
- nuitka/code_generation/ImportCodes.py +90 -50
- nuitka/code_generation/Indentation.py +23 -22
- nuitka/code_generation/IndexCodes.py +19 -17
- nuitka/code_generation/InjectCCodes.py +14 -12
- nuitka/code_generation/IntegerCodes.py +19 -17
- nuitka/code_generation/IteratorCodes.py +86 -71
- nuitka/code_generation/JitCodes.py +44 -0
- nuitka/code_generation/LabelCodes.py +19 -17
- nuitka/code_generation/LineNumberCodes.py +20 -20
- nuitka/code_generation/ListCodes.py +32 -36
- nuitka/code_generation/LoaderCodes.py +22 -17
- nuitka/code_generation/LocalsDictCodes.py +56 -32
- nuitka/code_generation/LoopCodes.py +19 -17
- nuitka/code_generation/MatchCodes.py +42 -22
- nuitka/code_generation/ModuleCodes.py +71 -29
- nuitka/code_generation/Namify.py +27 -23
- nuitka/code_generation/NetworkxCodes.py +51 -0
- nuitka/code_generation/OperationCodes.py +80 -51
- nuitka/code_generation/PackageResourceCodes.py +96 -23
- nuitka/code_generation/PrintCodes.py +19 -17
- nuitka/code_generation/PythonAPICodes.py +19 -17
- nuitka/code_generation/RaisingCodes.py +183 -107
- nuitka/code_generation/Reports.py +32 -22
- nuitka/code_generation/ReturnCodes.py +20 -32
- nuitka/code_generation/SetCodes.py +19 -17
- nuitka/code_generation/SliceCodes.py +22 -20
- nuitka/code_generation/StringCodes.py +19 -17
- nuitka/code_generation/SubscriptCodes.py +24 -30
- nuitka/code_generation/TensorflowCodes.py +54 -0
- nuitka/code_generation/TryCodes.py +31 -41
- nuitka/code_generation/TupleCodes.py +20 -18
- nuitka/code_generation/TypeAliasCodes.py +119 -0
- nuitka/code_generation/VariableCodes.py +118 -55
- nuitka/code_generation/VariableDeclarations.py +28 -25
- nuitka/code_generation/YieldCodes.py +23 -21
- nuitka/code_generation/__init__.py +5 -4
- nuitka/code_generation/c_types/CTypeBases.py +29 -19
- nuitka/code_generation/c_types/CTypeBooleans.py +19 -17
- nuitka/code_generation/c_types/CTypeCFloats.py +19 -17
- nuitka/code_generation/c_types/CTypeCLongs.py +19 -18
- nuitka/code_generation/c_types/CTypeModuleDictVariables.py +22 -17
- nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +22 -21
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +89 -43
- nuitka/code_generation/c_types/CTypeNuitkaVoids.py +20 -18
- nuitka/code_generation/c_types/CTypePyObjectPointers.py +43 -31
- nuitka/code_generation/c_types/CTypeVoids.py +20 -17
- nuitka/code_generation/c_types/__init__.py +5 -4
- nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesConstants.py +143 -39
- nuitka/code_generation/templates/CodeTemplatesCoroutines.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +33 -33
- nuitka/code_generation/templates/CodeTemplatesFrames.py +36 -27
- nuitka/code_generation/templates/CodeTemplatesFunction.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +21 -19
- nuitka/code_generation/templates/CodeTemplatesIterators.py +19 -53
- nuitka/code_generation/templates/CodeTemplatesLoader.py +25 -19
- nuitka/code_generation/templates/CodeTemplatesModules.py +278 -169
- nuitka/code_generation/templates/CodeTemplatesVariables.py +115 -27
- nuitka/code_generation/templates/TemplateDebugWrapper.py +19 -18
- nuitka/code_generation/templates/__init__.py +5 -4
- nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +19 -19
- nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +21 -21
- nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +79 -28
- nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +22 -22
- nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +19 -19
- nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +19 -19
- nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +74 -106
- nuitka/code_generation/templates_c/HelperImportHard.c.j2 +19 -20
- nuitka/code_generation/templates_c/HelperLongTools.c.j2 +19 -19
- nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +6 -6
- nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +23 -23
- nuitka/code_generation/templates_c/HelperOperationBinaryDual.c.j2 +115 -0
- nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +35 -35
- nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +37 -37
- nuitka/code_generation/templates_c/HelperOperationComparisonDual.c.j2 +86 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +18 -18
- nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +50 -38
- nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +27 -27
- nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +37 -37
- nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +31 -31
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +35 -31
- nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +20 -20
- nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +28 -28
- nuitka/code_generation/templates_c/HelperSlotsBytes.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsCommon.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsInt.c.j2 +48 -48
- nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +27 -25
- nuitka/code_generation/templates_c/HelperSlotsSet.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsStr.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +17 -17
- nuitka/containers/Namedtuples.py +25 -18
- nuitka/containers/OrderedSets.py +105 -5
- nuitka/containers/OrderedSetsFallback.py +19 -17
- nuitka/containers/__init__.py +5 -4
- nuitka/distutils/Build.py +33 -18
- nuitka/distutils/DistutilCommands.py +84 -33
- nuitka/distutils/__init__.py +5 -4
- nuitka/finalizations/Finalization.py +21 -18
- nuitka/finalizations/FinalizeMarkups.py +31 -55
- nuitka/finalizations/__init__.py +5 -4
- nuitka/freezer/DependsExe.py +60 -30
- nuitka/freezer/DllDependenciesCommon.py +47 -20
- nuitka/freezer/DllDependenciesMacOS.py +165 -58
- nuitka/freezer/DllDependenciesPosix.py +29 -19
- nuitka/freezer/DllDependenciesWin32.py +55 -33
- nuitka/freezer/ImportDetection.py +23 -17
- nuitka/freezer/IncludedDataFiles.py +142 -48
- nuitka/freezer/IncludedEntryPoints.py +104 -39
- nuitka/freezer/Onefile.py +32 -22
- nuitka/freezer/Standalone.py +166 -53
- nuitka/freezer/__init__.py +5 -4
- nuitka/importing/IgnoreListing.py +19 -17
- nuitka/importing/ImportCache.py +24 -21
- nuitka/importing/ImportResolving.py +103 -95
- nuitka/importing/Importing.py +319 -98
- nuitka/importing/PreloadedPackages.py +21 -18
- nuitka/importing/Recursion.py +142 -47
- nuitka/importing/StandardLibrary.py +96 -80
- nuitka/importing/__init__.py +5 -4
- nuitka/nodes/AsyncgenNodes.py +22 -23
- nuitka/nodes/AttributeLookupNodes.py +19 -17
- nuitka/nodes/AttributeNodes.py +19 -17
- nuitka/nodes/AttributeNodesGenerated.py +49 -24
- nuitka/nodes/BuiltinAllNodes.py +19 -17
- nuitka/nodes/BuiltinAnyNodes.py +19 -17
- nuitka/nodes/BuiltinComplexNodes.py +20 -17
- nuitka/nodes/BuiltinDecodingNodes.py +19 -17
- nuitka/nodes/BuiltinDecoratorNodes.py +19 -17
- nuitka/nodes/BuiltinDictNodes.py +19 -17
- nuitka/nodes/BuiltinFormatNodes.py +20 -17
- nuitka/nodes/BuiltinHashNodes.py +19 -17
- nuitka/nodes/BuiltinInputNodes.py +19 -17
- nuitka/nodes/BuiltinIntegerNodes.py +19 -17
- nuitka/nodes/BuiltinIteratorNodes.py +25 -21
- nuitka/nodes/BuiltinLenNodes.py +19 -17
- nuitka/nodes/BuiltinNextNodes.py +19 -17
- nuitka/nodes/BuiltinOpenNodes.py +52 -18
- nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +40 -23
- nuitka/nodes/BuiltinRangeNodes.py +21 -19
- nuitka/nodes/BuiltinRefNodes.py +73 -40
- nuitka/nodes/BuiltinSumNodes.py +20 -18
- nuitka/nodes/BuiltinTypeNodes.py +19 -17
- nuitka/nodes/BuiltinVarsNodes.py +19 -18
- nuitka/nodes/BytesNodes.py +19 -17
- nuitka/nodes/CallNodes.py +19 -17
- nuitka/nodes/Checkers.py +19 -17
- nuitka/nodes/ChildrenHavingMixins.py +1624 -283
- nuitka/nodes/ClassNodes.py +49 -29
- nuitka/nodes/CodeObjectSpecs.py +29 -18
- nuitka/nodes/ComparisonNodes.py +19 -17
- nuitka/nodes/ConditionalNodes.py +24 -25
- nuitka/nodes/ConstantRefNodes.py +57 -17
- nuitka/nodes/ContainerMakingNodes.py +19 -17
- nuitka/nodes/ContainerOperationNodes.py +19 -17
- nuitka/nodes/CoroutineNodes.py +22 -23
- nuitka/nodes/CtypesNodes.py +19 -18
- nuitka/nodes/DictionaryNodes.py +19 -18
- nuitka/nodes/ExceptionNodes.py +131 -43
- nuitka/nodes/ExecEvalNodes.py +19 -17
- nuitka/nodes/ExpressionBases.py +34 -26
- nuitka/nodes/ExpressionBasesGenerated.py +341 -35
- nuitka/nodes/ExpressionShapeMixins.py +19 -17
- nuitka/nodes/FrameNodes.py +41 -28
- nuitka/nodes/FunctionAttributeNodes.py +19 -17
- nuitka/nodes/FunctionNodes.py +84 -38
- nuitka/nodes/FutureSpecs.py +35 -20
- nuitka/nodes/GeneratorNodes.py +24 -25
- nuitka/nodes/GlobalsLocalsNodes.py +22 -17
- nuitka/nodes/HardImportNodesGenerated.py +746 -148
- nuitka/nodes/ImportHardNodes.py +46 -38
- nuitka/nodes/ImportNodes.py +438 -448
- nuitka/nodes/IndicatorMixins.py +19 -17
- nuitka/nodes/InjectCNodes.py +19 -18
- nuitka/nodes/IterationHandles.py +55 -34
- nuitka/nodes/KeyValuePairNodes.py +19 -17
- nuitka/nodes/ListOperationNodes.py +33 -21
- nuitka/nodes/LocalsDictNodes.py +19 -17
- nuitka/nodes/LocalsScopes.py +41 -41
- nuitka/nodes/LoopNodes.py +28 -17
- nuitka/nodes/MatchNodes.py +37 -24
- nuitka/nodes/ModuleAttributeNodes.py +18 -35
- nuitka/nodes/ModuleNodes.py +90 -31
- nuitka/nodes/NetworkxNodes.py +45 -0
- nuitka/nodes/NodeBases.py +73 -44
- nuitka/nodes/NodeMakingHelpers.py +92 -69
- nuitka/nodes/NodeMetaClasses.py +45 -28
- nuitka/nodes/OperatorNodes.py +28 -26
- nuitka/nodes/OperatorNodesUnary.py +148 -20
- nuitka/nodes/OsSysNodes.py +97 -18
- nuitka/nodes/OutlineNodes.py +24 -22
- nuitka/nodes/PackageMetadataNodes.py +37 -27
- nuitka/nodes/PackageResourceNodes.py +29 -23
- nuitka/nodes/PrintNodes.py +19 -17
- nuitka/nodes/ReturnNodes.py +20 -18
- nuitka/nodes/SideEffectNodes.py +19 -17
- nuitka/nodes/SliceNodes.py +20 -18
- nuitka/nodes/StatementBasesGenerated.py +125 -79
- nuitka/nodes/StatementNodes.py +27 -24
- nuitka/nodes/StrNodes.py +19 -17
- nuitka/nodes/StringConcatenationNodes.py +20 -17
- nuitka/nodes/SubscriptNodes.py +27 -25
- nuitka/nodes/TensorflowNodes.py +38 -0
- nuitka/nodes/TryNodes.py +19 -17
- nuitka/nodes/TypeMatchNodes.py +19 -17
- nuitka/nodes/TypeNodes.py +68 -18
- nuitka/nodes/VariableAssignNodes.py +122 -64
- nuitka/nodes/VariableDelNodes.py +19 -17
- nuitka/nodes/VariableNameNodes.py +19 -17
- nuitka/nodes/VariableRefNodes.py +63 -26
- nuitka/nodes/VariableReleaseNodes.py +19 -17
- nuitka/nodes/YieldNodes.py +21 -19
- nuitka/nodes/__init__.py +5 -4
- nuitka/nodes/shapes/BuiltinTypeShapes.py +169 -46
- nuitka/nodes/shapes/ControlFlowDescriptions.py +19 -17
- nuitka/nodes/shapes/ShapeMixins.py +57 -17
- nuitka/nodes/shapes/StandardShapes.py +80 -21
- nuitka/nodes/shapes/__init__.py +5 -4
- nuitka/optimizations/BytecodeDemotion.py +21 -18
- nuitka/optimizations/FunctionInlining.py +22 -23
- nuitka/optimizations/Graphs.py +19 -17
- nuitka/optimizations/Optimization.py +39 -35
- nuitka/optimizations/OptimizeBuiltinCalls.py +31 -27
- nuitka/optimizations/Tags.py +19 -18
- nuitka/optimizations/TraceCollections.py +67 -24
- nuitka/optimizations/ValueTraces.py +92 -25
- nuitka/optimizations/__init__.py +5 -4
- nuitka/pgo/PGO.py +33 -23
- nuitka/pgo/__init__.py +5 -4
- nuitka/plugins/PluginBase.py +655 -112
- nuitka/plugins/Plugins.py +247 -61
- nuitka/plugins/YamlPluginBase.py +121 -0
- nuitka/plugins/__init__.py +5 -4
- nuitka/plugins/standard/AntiBloatPlugin.py +374 -135
- nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +20 -19
- nuitka/plugins/standard/DataFilesPlugin.py +65 -29
- nuitka/plugins/standard/DelvewheelPlugin.py +32 -24
- nuitka/plugins/standard/DillPlugin/DillPlugin.c +37 -0
- nuitka/plugins/standard/DillPlugin/dill-postLoad.py +256 -0
- nuitka/plugins/standard/DillPlugin.py +42 -134
- nuitka/plugins/standard/DllFilesPlugin.py +125 -42
- nuitka/plugins/standard/EnumPlugin.py +19 -17
- nuitka/plugins/standard/EventletPlugin.py +19 -17
- nuitka/plugins/standard/GeventPlugin.py +19 -17
- nuitka/plugins/standard/GiPlugin.py +44 -28
- nuitka/plugins/standard/GlfwPlugin.py +20 -17
- nuitka/plugins/standard/ImplicitImports.py +403 -54
- nuitka/plugins/standard/KivyPlugin.py +24 -20
- nuitka/plugins/standard/MatplotlibPlugin.py +99 -42
- nuitka/plugins/standard/MultiprocessingPlugin.py +35 -39
- nuitka/plugins/standard/NumpyPlugin.py +19 -17
- nuitka/plugins/standard/OptionsNannyPlugin.py +48 -76
- nuitka/plugins/standard/PbrPlugin.py +21 -19
- nuitka/plugins/standard/PkgResourcesPlugin.py +34 -23
- nuitka/plugins/standard/PlaywrightPlugin.py +184 -0
- nuitka/plugins/standard/PmwPlugin.py +30 -27
- nuitka/plugins/standard/PySidePyQtPlugin.py +82 -80
- nuitka/plugins/standard/PywebViewPlugin.py +19 -17
- nuitka/plugins/standard/SpacyPlugin.py +136 -0
- nuitka/plugins/standard/TensorflowPlugin.py +20 -17
- nuitka/plugins/standard/TkinterPlugin.py +102 -108
- nuitka/plugins/standard/TorchPlugin.py +20 -17
- nuitka/plugins/standard/TransformersPlugin.py +90 -231
- nuitka/plugins/standard/TrioPlugin.py +18 -15
- nuitka/plugins/standard/UpxPlugin.py +21 -19
- nuitka/plugins/standard/__init__.py +5 -4
- nuitka/plugins/standard/standard.nuitka-package.config.yml +3925 -1293
- nuitka/plugins/standard/stdlib2.nuitka-package.config.yml +14 -14
- nuitka/plugins/standard/stdlib3.nuitka-package.config.yml +154 -66
- nuitka/reports/CompilationReportReader.py +79 -0
- nuitka/reports/LicenseReport.rst.j2 +21 -21
- nuitka/reports/Reports.py +363 -76
- nuitka/reports/__init__.py +5 -4
- nuitka/specs/BuiltinBytesOperationSpecs.py +18 -17
- nuitka/specs/BuiltinDictOperationSpecs.py +18 -17
- nuitka/specs/BuiltinListOperationSpecs.py +18 -17
- nuitka/specs/BuiltinParameterSpecs.py +35 -21
- nuitka/specs/BuiltinStrOperationSpecs.py +19 -18
- nuitka/specs/BuiltinTypeOperationSpecs.py +18 -18
- nuitka/specs/BuiltinUnicodeOperationSpecs.py +18 -17
- nuitka/specs/HardImportSpecs.py +74 -22
- nuitka/specs/ParameterSpecs.py +60 -45
- nuitka/specs/__init__.py +5 -4
- nuitka/tools/Basics.py +20 -18
- nuitka/tools/__init__.py +5 -4
- nuitka/tools/commercial/__init__.py +7 -6
- nuitka/tools/data_composer/DataComposer.py +78 -62
- nuitka/tools/data_composer/__init__.py +5 -4
- nuitka/tools/data_composer/__main__.py +18 -17
- nuitka/tools/environments/CreateEnvironment.py +20 -17
- nuitka/tools/environments/Virtualenv.py +60 -32
- nuitka/tools/environments/__init__.py +5 -4
- nuitka/tools/general/__init__.py +5 -4
- nuitka/tools/general/dll_report/__init__.py +5 -4
- nuitka/tools/general/dll_report/__main__.py +29 -22
- nuitka/tools/general/find_module/FindModuleCode.py +35 -22
- nuitka/tools/general/find_module/__init__.py +5 -4
- nuitka/tools/onefile_compressor/OnefileCompressor.py +213 -131
- nuitka/tools/onefile_compressor/__init__.py +5 -4
- nuitka/tools/onefile_compressor/__main__.py +18 -17
- nuitka/tools/podman/Podman.py +19 -17
- nuitka/tools/podman/__init__.py +5 -4
- nuitka/tools/podman/__main__.py +35 -19
- nuitka/tools/profiler/__init__.py +5 -4
- nuitka/tools/profiler/__main__.py +18 -17
- nuitka/tools/scanning/DisplayPackageDLLs.py +47 -22
- nuitka/tools/scanning/DisplayPackageData.py +31 -19
- nuitka/tools/scanning/__init__.py +5 -4
- nuitka/tools/specialize/CTypeDescriptions.py +251 -80
- nuitka/tools/specialize/Common.py +18 -17
- nuitka/tools/specialize/SpecializeC.py +248 -82
- nuitka/tools/specialize/SpecializePython.py +108 -45
- nuitka/tools/specialize/__init__.py +5 -4
- nuitka/tools/testing/Common.py +175 -114
- nuitka/tools/testing/Constructs.py +19 -17
- nuitka/tools/testing/OutputComparison.py +54 -18
- nuitka/tools/testing/Pythons.py +19 -18
- nuitka/tools/testing/RuntimeTracing.py +20 -19
- nuitka/tools/testing/SearchModes.py +26 -20
- nuitka/tools/testing/Valgrind.py +19 -17
- nuitka/tools/testing/__init__.py +5 -4
- nuitka/tools/testing/check_reference_counts/__init__.py +5 -4
- nuitka/tools/testing/check_reference_counts/__main__.py +18 -18
- nuitka/tools/testing/compare_with_cpython/__init__.py +5 -4
- nuitka/tools/testing/compare_with_cpython/__main__.py +39 -30
- nuitka/tools/testing/find_sxs_modules/__init__.py +5 -4
- nuitka/tools/testing/find_sxs_modules/__main__.py +17 -17
- nuitka/tools/testing/measure_construct_performance/__init__.py +5 -4
- nuitka/tools/testing/measure_construct_performance/__main__.py +23 -33
- nuitka/tools/testing/run_nuitka_tests/__init__.py +5 -4
- nuitka/tools/testing/run_nuitka_tests/__main__.py +134 -51
- nuitka/tools/watch/AutoStage.py +145 -0
- nuitka/tools/watch/GitHub.py +113 -0
- nuitka/tools/watch/__init__.py +5 -4
- nuitka/tools/watch/__main__.py +322 -91
- nuitka/tree/Building.py +184 -182
- nuitka/tree/ComplexCallHelperFunctions.py +84 -58
- nuitka/tree/Extractions.py +19 -17
- nuitka/tree/InternalModule.py +29 -20
- nuitka/tree/Operations.py +19 -17
- nuitka/tree/ReformulationAssertStatements.py +51 -31
- nuitka/tree/ReformulationAssignmentStatements.py +96 -91
- nuitka/tree/ReformulationBooleanExpressions.py +19 -17
- nuitka/tree/ReformulationCallExpressions.py +20 -18
- nuitka/tree/ReformulationClasses.py +45 -39
- nuitka/tree/ReformulationClasses3.py +239 -116
- nuitka/tree/ReformulationComparisonExpressions.py +29 -35
- nuitka/tree/ReformulationContractionExpressions.py +58 -55
- nuitka/tree/ReformulationDictionaryCreation.py +41 -35
- nuitka/tree/ReformulationExecStatements.py +42 -39
- nuitka/tree/ReformulationForLoopStatements.py +30 -34
- nuitka/tree/ReformulationFunctionStatements.py +59 -55
- nuitka/tree/ReformulationImportStatements.py +34 -29
- nuitka/tree/ReformulationLambdaExpressions.py +23 -24
- nuitka/tree/ReformulationMatchStatements.py +246 -92
- nuitka/tree/ReformulationMultidist.py +22 -18
- nuitka/tree/ReformulationNamespacePackages.py +55 -46
- nuitka/tree/ReformulationPrintStatements.py +23 -24
- nuitka/tree/ReformulationSequenceCreation.py +50 -49
- nuitka/tree/ReformulationSubscriptExpressions.py +19 -17
- nuitka/tree/ReformulationTryExceptStatements.py +19 -17
- nuitka/tree/ReformulationTryFinallyStatements.py +34 -17
- nuitka/tree/ReformulationWhileLoopStatements.py +19 -17
- nuitka/tree/ReformulationWithStatements.py +39 -41
- nuitka/tree/ReformulationYieldExpressions.py +44 -24
- nuitka/tree/SourceHandling.py +76 -31
- nuitka/tree/SyntaxErrors.py +19 -17
- nuitka/tree/TreeHelpers.py +33 -20
- nuitka/tree/VariableClosure.py +35 -39
- nuitka/tree/__init__.py +5 -4
- nuitka/utils/AppDirs.py +41 -20
- nuitka/utils/CStrings.py +66 -21
- nuitka/utils/CommandLineOptions.py +111 -22
- nuitka/utils/Distributions.py +445 -54
- nuitka/utils/Download.py +89 -57
- nuitka/utils/Execution.py +102 -58
- nuitka/utils/FileOperations.py +357 -128
- nuitka/utils/Hashing.py +55 -33
- nuitka/utils/Images.py +26 -19
- nuitka/utils/Importing.py +119 -37
- nuitka/utils/InlineCopies.py +52 -0
- nuitka/utils/InstalledPythons.py +85 -75
- nuitka/utils/InstanceCounters.py +20 -17
- nuitka/utils/Jinja2.py +30 -22
- nuitka/utils/Json.py +21 -19
- nuitka/utils/MacOSApp.py +26 -18
- nuitka/utils/MemoryUsage.py +20 -18
- nuitka/utils/ModuleNames.py +42 -26
- nuitka/utils/PackageResources.py +44 -0
- nuitka/utils/ReExecute.py +50 -28
- nuitka/utils/Rest.py +20 -17
- nuitka/utils/SharedLibraries.py +161 -75
- nuitka/utils/Shebang.py +20 -17
- nuitka/utils/Signing.py +63 -18
- nuitka/utils/SlotMetaClasses.py +57 -0
- nuitka/utils/StaticLibraries.py +83 -56
- nuitka/utils/ThreadedExecutor.py +18 -17
- nuitka/utils/Timing.py +22 -20
- nuitka/utils/Utils.py +132 -25
- nuitka/utils/WindowsFileUsage.py +22 -20
- nuitka/utils/WindowsResources.py +25 -18
- nuitka/utils/Yaml.py +62 -24
- nuitka/utils/__init__.py +5 -4
- Nuitka_winsvc-1.8.dist-info/RECORD +0 -905
- nuitka/build/inline_copy/tqdm/tqdm/_tqdm_gui.py +0 -9
- nuitka/build/inline_copy/tqdm/tqdm/gui.py +0 -191
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/top_level.txt +0 -0
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
3
|
-
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
|
-
// integrates with CPython, but also works on its own.
|
|
5
|
-
//
|
|
6
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
// you may not use this file except in compliance with the License.
|
|
8
|
-
// You may obtain a copy of the License at
|
|
9
|
-
//
|
|
10
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
//
|
|
12
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
// See the License for the specific language governing permissions and
|
|
16
|
-
// limitations under the License.
|
|
17
|
-
//
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
18
3
|
/* WARNING, this code is GENERATED. Modify the template HelperOperationInplace.c.j2 instead! */
|
|
19
4
|
|
|
20
5
|
/* This file is included from another C file, help IDEs to still parse it on its own. */
|
|
@@ -72,6 +57,7 @@ static inline bool _INPLACE_OPERATION_MOD_INT_INT(PyObject **operand1, PyObject
|
|
|
72
57
|
clong_result = r;
|
|
73
58
|
goto exit_result_ok_clong;
|
|
74
59
|
}
|
|
60
|
+
|
|
75
61
|
{
|
|
76
62
|
PyObject *operand1_object = *operand1;
|
|
77
63
|
PyObject *operand2_object = operand2;
|
|
@@ -90,7 +76,7 @@ exit_result_ok_clong:
|
|
|
90
76
|
|
|
91
77
|
// That's our return value then. As we use a dedicated variable, it's
|
|
92
78
|
// OK that way.
|
|
93
|
-
*operand1 =
|
|
79
|
+
*operand1 = Nuitka_PyInt_FromLong(clong_result);
|
|
94
80
|
goto exit_result_ok;
|
|
95
81
|
|
|
96
82
|
exit_result_object:
|
|
@@ -142,7 +128,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_INT(PyObject **op
|
|
|
142
128
|
goto exit_inplace_result_object;
|
|
143
129
|
}
|
|
144
130
|
|
|
145
|
-
|
|
131
|
+
Py_DECREF_IMMORTAL(x);
|
|
146
132
|
}
|
|
147
133
|
|
|
148
134
|
{
|
|
@@ -168,7 +154,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_INT(PyObject **op
|
|
|
168
154
|
goto exit_inplace_result_object;
|
|
169
155
|
}
|
|
170
156
|
|
|
171
|
-
|
|
157
|
+
Py_DECREF_IMMORTAL(x);
|
|
172
158
|
}
|
|
173
159
|
|
|
174
160
|
if (slot2 != NULL) {
|
|
@@ -179,7 +165,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_INT(PyObject **op
|
|
|
179
165
|
goto exit_inplace_result_object;
|
|
180
166
|
}
|
|
181
167
|
|
|
182
|
-
|
|
168
|
+
Py_DECREF_IMMORTAL(x);
|
|
183
169
|
}
|
|
184
170
|
|
|
185
171
|
#if PYTHON_VERSION < 0x300
|
|
@@ -256,7 +242,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_INT(PyObject **op
|
|
|
256
242
|
}
|
|
257
243
|
#endif
|
|
258
244
|
|
|
259
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
245
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: '%s' and 'int'", type1->tp_name);
|
|
260
246
|
goto exit_inplace_exception;
|
|
261
247
|
}
|
|
262
248
|
|
|
@@ -327,6 +313,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_INT(PyObject **operand1, PyObje
|
|
|
327
313
|
clong_result = r;
|
|
328
314
|
goto exit_result_ok_clong;
|
|
329
315
|
}
|
|
316
|
+
|
|
330
317
|
{
|
|
331
318
|
PyObject *operand1_object = *operand1;
|
|
332
319
|
PyObject *operand2_object = operand2;
|
|
@@ -345,7 +332,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_INT(PyObject **operand1, PyObje
|
|
|
345
332
|
|
|
346
333
|
// That's our return value then. As we use a dedicated variable, it's
|
|
347
334
|
// OK that way.
|
|
348
|
-
*operand1 =
|
|
335
|
+
*operand1 = Nuitka_PyInt_FromLong(clong_result);
|
|
349
336
|
goto exit_result_ok;
|
|
350
337
|
|
|
351
338
|
exit_result_object:
|
|
@@ -415,7 +402,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_INT_OBJECT(PyObject **op
|
|
|
415
402
|
goto exit_inplace_result_object;
|
|
416
403
|
}
|
|
417
404
|
|
|
418
|
-
|
|
405
|
+
Py_DECREF_IMMORTAL(x);
|
|
419
406
|
slot2 = NULL;
|
|
420
407
|
}
|
|
421
408
|
}
|
|
@@ -427,7 +414,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_INT_OBJECT(PyObject **op
|
|
|
427
414
|
goto exit_inplace_result_object;
|
|
428
415
|
}
|
|
429
416
|
|
|
430
|
-
|
|
417
|
+
Py_DECREF_IMMORTAL(x);
|
|
431
418
|
}
|
|
432
419
|
|
|
433
420
|
if (slot2 != NULL) {
|
|
@@ -438,7 +425,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_INT_OBJECT(PyObject **op
|
|
|
438
425
|
goto exit_inplace_result_object;
|
|
439
426
|
}
|
|
440
427
|
|
|
441
|
-
|
|
428
|
+
Py_DECREF_IMMORTAL(x);
|
|
442
429
|
}
|
|
443
430
|
|
|
444
431
|
#if PYTHON_VERSION < 0x300
|
|
@@ -515,7 +502,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_INT_OBJECT(PyObject **op
|
|
|
515
502
|
}
|
|
516
503
|
#endif
|
|
517
504
|
|
|
518
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
505
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'int' and '%s'", type2->tp_name);
|
|
519
506
|
goto exit_inplace_exception;
|
|
520
507
|
}
|
|
521
508
|
|
|
@@ -586,6 +573,7 @@ static inline bool _INPLACE_OPERATION_MOD_INT_OBJECT(PyObject **operand1, PyObje
|
|
|
586
573
|
clong_result = r;
|
|
587
574
|
goto exit_result_ok_clong;
|
|
588
575
|
}
|
|
576
|
+
|
|
589
577
|
{
|
|
590
578
|
PyObject *operand1_object = *operand1;
|
|
591
579
|
PyObject *operand2_object = operand2;
|
|
@@ -604,7 +592,7 @@ static inline bool _INPLACE_OPERATION_MOD_INT_OBJECT(PyObject **operand1, PyObje
|
|
|
604
592
|
|
|
605
593
|
// That's our return value then. As we use a dedicated variable, it's
|
|
606
594
|
// OK that way.
|
|
607
|
-
*operand1 =
|
|
595
|
+
*operand1 = Nuitka_PyInt_FromLong(clong_result);
|
|
608
596
|
goto exit_result_ok;
|
|
609
597
|
|
|
610
598
|
exit_result_object:
|
|
@@ -704,7 +692,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_LONG(PyObject **o
|
|
|
704
692
|
goto exit_inplace_result_object;
|
|
705
693
|
}
|
|
706
694
|
|
|
707
|
-
|
|
695
|
+
Py_DECREF_IMMORTAL(x);
|
|
708
696
|
}
|
|
709
697
|
|
|
710
698
|
{
|
|
@@ -730,7 +718,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_LONG(PyObject **o
|
|
|
730
718
|
goto exit_inplace_result_object;
|
|
731
719
|
}
|
|
732
720
|
|
|
733
|
-
|
|
721
|
+
Py_DECREF_IMMORTAL(x);
|
|
734
722
|
}
|
|
735
723
|
|
|
736
724
|
if (slot2 != NULL) {
|
|
@@ -741,7 +729,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_LONG(PyObject **o
|
|
|
741
729
|
goto exit_inplace_result_object;
|
|
742
730
|
}
|
|
743
731
|
|
|
744
|
-
|
|
732
|
+
Py_DECREF_IMMORTAL(x);
|
|
745
733
|
}
|
|
746
734
|
|
|
747
735
|
#if PYTHON_VERSION < 0x300
|
|
@@ -819,9 +807,9 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_LONG(PyObject **o
|
|
|
819
807
|
#endif
|
|
820
808
|
|
|
821
809
|
#if PYTHON_VERSION < 0x300
|
|
822
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
810
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: '%s' and 'long'", type1->tp_name);
|
|
823
811
|
#else
|
|
824
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
812
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: '%s' and 'int'", type1->tp_name);
|
|
825
813
|
#endif
|
|
826
814
|
goto exit_inplace_exception;
|
|
827
815
|
}
|
|
@@ -936,7 +924,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_LONG_OBJECT(PyObject **o
|
|
|
936
924
|
goto exit_inplace_result_object;
|
|
937
925
|
}
|
|
938
926
|
|
|
939
|
-
|
|
927
|
+
Py_DECREF_IMMORTAL(x);
|
|
940
928
|
slot2 = NULL;
|
|
941
929
|
}
|
|
942
930
|
}
|
|
@@ -948,7 +936,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_LONG_OBJECT(PyObject **o
|
|
|
948
936
|
goto exit_inplace_result_object;
|
|
949
937
|
}
|
|
950
938
|
|
|
951
|
-
|
|
939
|
+
Py_DECREF_IMMORTAL(x);
|
|
952
940
|
}
|
|
953
941
|
|
|
954
942
|
if (slot2 != NULL) {
|
|
@@ -959,7 +947,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_LONG_OBJECT(PyObject **o
|
|
|
959
947
|
goto exit_inplace_result_object;
|
|
960
948
|
}
|
|
961
949
|
|
|
962
|
-
|
|
950
|
+
Py_DECREF_IMMORTAL(x);
|
|
963
951
|
}
|
|
964
952
|
|
|
965
953
|
#if PYTHON_VERSION < 0x300
|
|
@@ -1037,9 +1025,9 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_LONG_OBJECT(PyObject **o
|
|
|
1037
1025
|
#endif
|
|
1038
1026
|
|
|
1039
1027
|
#if PYTHON_VERSION < 0x300
|
|
1040
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1028
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'long' and '%s'", type2->tp_name);
|
|
1041
1029
|
#else
|
|
1042
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1030
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'int' and '%s'", type2->tp_name);
|
|
1043
1031
|
#endif
|
|
1044
1032
|
goto exit_inplace_exception;
|
|
1045
1033
|
}
|
|
@@ -1211,7 +1199,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_FLOAT(PyObject **
|
|
|
1211
1199
|
goto exit_inplace_result_object;
|
|
1212
1200
|
}
|
|
1213
1201
|
|
|
1214
|
-
|
|
1202
|
+
Py_DECREF_IMMORTAL(x);
|
|
1215
1203
|
}
|
|
1216
1204
|
|
|
1217
1205
|
{
|
|
@@ -1237,7 +1225,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_FLOAT(PyObject **
|
|
|
1237
1225
|
goto exit_inplace_result_object;
|
|
1238
1226
|
}
|
|
1239
1227
|
|
|
1240
|
-
|
|
1228
|
+
Py_DECREF_IMMORTAL(x);
|
|
1241
1229
|
}
|
|
1242
1230
|
|
|
1243
1231
|
if (slot2 != NULL) {
|
|
@@ -1248,7 +1236,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_FLOAT(PyObject **
|
|
|
1248
1236
|
goto exit_inplace_result_object;
|
|
1249
1237
|
}
|
|
1250
1238
|
|
|
1251
|
-
|
|
1239
|
+
Py_DECREF_IMMORTAL(x);
|
|
1252
1240
|
}
|
|
1253
1241
|
|
|
1254
1242
|
#if PYTHON_VERSION < 0x300
|
|
@@ -1325,7 +1313,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_OBJECT_FLOAT(PyObject **
|
|
|
1325
1313
|
}
|
|
1326
1314
|
#endif
|
|
1327
1315
|
|
|
1328
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1316
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: '%s' and 'float'", type1->tp_name);
|
|
1329
1317
|
goto exit_inplace_exception;
|
|
1330
1318
|
}
|
|
1331
1319
|
|
|
@@ -1465,7 +1453,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_FLOAT_OBJECT(PyObject **
|
|
|
1465
1453
|
goto exit_inplace_result_object;
|
|
1466
1454
|
}
|
|
1467
1455
|
|
|
1468
|
-
|
|
1456
|
+
Py_DECREF_IMMORTAL(x);
|
|
1469
1457
|
slot2 = NULL;
|
|
1470
1458
|
}
|
|
1471
1459
|
}
|
|
@@ -1477,7 +1465,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_FLOAT_OBJECT(PyObject **
|
|
|
1477
1465
|
goto exit_inplace_result_object;
|
|
1478
1466
|
}
|
|
1479
1467
|
|
|
1480
|
-
|
|
1468
|
+
Py_DECREF_IMMORTAL(x);
|
|
1481
1469
|
}
|
|
1482
1470
|
|
|
1483
1471
|
if (slot2 != NULL) {
|
|
@@ -1488,7 +1476,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_FLOAT_OBJECT(PyObject **
|
|
|
1488
1476
|
goto exit_inplace_result_object;
|
|
1489
1477
|
}
|
|
1490
1478
|
|
|
1491
|
-
|
|
1479
|
+
Py_DECREF_IMMORTAL(x);
|
|
1492
1480
|
}
|
|
1493
1481
|
|
|
1494
1482
|
#if PYTHON_VERSION < 0x300
|
|
@@ -1565,7 +1553,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_FLOAT_OBJECT(PyObject **
|
|
|
1565
1553
|
}
|
|
1566
1554
|
#endif
|
|
1567
1555
|
|
|
1568
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1556
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'float' and '%s'", type2->tp_name);
|
|
1569
1557
|
goto exit_inplace_exception;
|
|
1570
1558
|
}
|
|
1571
1559
|
|
|
@@ -1697,15 +1685,15 @@ static inline bool _INPLACE_OPERATION_MOD_FLOAT_LONG(PyObject **operand1, PyObje
|
|
|
1697
1685
|
goto exit_inplace_result_object;
|
|
1698
1686
|
}
|
|
1699
1687
|
|
|
1700
|
-
|
|
1688
|
+
Py_DECREF_IMMORTAL(x);
|
|
1701
1689
|
}
|
|
1702
1690
|
|
|
1703
1691
|
// Statically recognized that coercion is not possible with these types
|
|
1704
1692
|
|
|
1705
1693
|
#if PYTHON_VERSION < 0x300
|
|
1706
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1694
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'float' and 'long'");
|
|
1707
1695
|
#else
|
|
1708
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1696
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'float' and 'int'");
|
|
1709
1697
|
#endif
|
|
1710
1698
|
goto exit_inplace_exception;
|
|
1711
1699
|
}
|
|
@@ -1771,15 +1759,15 @@ static inline bool _INPLACE_OPERATION_MOD_LONG_FLOAT(PyObject **operand1, PyObje
|
|
|
1771
1759
|
goto exit_inplace_result_object;
|
|
1772
1760
|
}
|
|
1773
1761
|
|
|
1774
|
-
|
|
1762
|
+
Py_DECREF_IMMORTAL(x);
|
|
1775
1763
|
}
|
|
1776
1764
|
|
|
1777
1765
|
// Statically recognized that coercion is not possible with these types
|
|
1778
1766
|
|
|
1779
1767
|
#if PYTHON_VERSION < 0x300
|
|
1780
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1768
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'long' and 'float'");
|
|
1781
1769
|
#else
|
|
1782
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1770
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'int' and 'float'");
|
|
1783
1771
|
#endif
|
|
1784
1772
|
goto exit_inplace_exception;
|
|
1785
1773
|
}
|
|
@@ -1840,12 +1828,12 @@ static inline bool _INPLACE_OPERATION_MOD_FLOAT_INT(PyObject **operand1, PyObjec
|
|
|
1840
1828
|
goto exit_inplace_result_object;
|
|
1841
1829
|
}
|
|
1842
1830
|
|
|
1843
|
-
|
|
1831
|
+
Py_DECREF_IMMORTAL(x);
|
|
1844
1832
|
}
|
|
1845
1833
|
|
|
1846
1834
|
// Statically recognized that coercion is not possible with these types
|
|
1847
1835
|
|
|
1848
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1836
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'float' and 'int'");
|
|
1849
1837
|
goto exit_inplace_exception;
|
|
1850
1838
|
}
|
|
1851
1839
|
|
|
@@ -1912,12 +1900,12 @@ static inline bool _INPLACE_OPERATION_MOD_INT_FLOAT(PyObject **operand1, PyObjec
|
|
|
1912
1900
|
goto exit_inplace_result_object;
|
|
1913
1901
|
}
|
|
1914
1902
|
|
|
1915
|
-
|
|
1903
|
+
Py_DECREF_IMMORTAL(x);
|
|
1916
1904
|
}
|
|
1917
1905
|
|
|
1918
1906
|
// Statically recognized that coercion is not possible with these types
|
|
1919
1907
|
|
|
1920
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1908
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'int' and 'float'");
|
|
1921
1909
|
goto exit_inplace_exception;
|
|
1922
1910
|
}
|
|
1923
1911
|
|
|
@@ -1978,12 +1966,12 @@ static inline bool _INPLACE_OPERATION_MOD_LONG_INT(PyObject **operand1, PyObject
|
|
|
1978
1966
|
goto exit_inplace_result_object;
|
|
1979
1967
|
}
|
|
1980
1968
|
|
|
1981
|
-
|
|
1969
|
+
Py_DECREF_IMMORTAL(x);
|
|
1982
1970
|
}
|
|
1983
1971
|
|
|
1984
1972
|
// Statically recognized that coercion is not possible with these types
|
|
1985
1973
|
|
|
1986
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
1974
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'long' and 'int'");
|
|
1987
1975
|
goto exit_inplace_exception;
|
|
1988
1976
|
}
|
|
1989
1977
|
|
|
@@ -2050,12 +2038,12 @@ static inline bool _INPLACE_OPERATION_MOD_INT_LONG(PyObject **operand1, PyObject
|
|
|
2050
2038
|
goto exit_inplace_result_object;
|
|
2051
2039
|
}
|
|
2052
2040
|
|
|
2053
|
-
|
|
2041
|
+
Py_DECREF_IMMORTAL(x);
|
|
2054
2042
|
}
|
|
2055
2043
|
|
|
2056
2044
|
// Statically recognized that coercion is not possible with these types
|
|
2057
2045
|
|
|
2058
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2046
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'int' and 'long'");
|
|
2059
2047
|
goto exit_inplace_exception;
|
|
2060
2048
|
}
|
|
2061
2049
|
|
|
@@ -2126,9 +2114,10 @@ static inline bool _INPLACE_OPERATION_MOD_INT_CLONG(PyObject **operand1, long op
|
|
|
2126
2114
|
clong_result = r;
|
|
2127
2115
|
goto exit_result_ok_clong;
|
|
2128
2116
|
}
|
|
2117
|
+
|
|
2129
2118
|
{
|
|
2130
2119
|
PyObject *operand1_object = *operand1;
|
|
2131
|
-
PyObject *operand2_object =
|
|
2120
|
+
PyObject *operand2_object = Nuitka_PyLong_FromLong(operand2);
|
|
2132
2121
|
|
|
2133
2122
|
PyObject *r = PyLong_Type.tp_as_number->nb_remainder(operand1_object, operand2_object);
|
|
2134
2123
|
assert(r != Py_NotImplemented);
|
|
@@ -2146,7 +2135,7 @@ exit_result_ok_clong:
|
|
|
2146
2135
|
|
|
2147
2136
|
// That's our return value then. As we use a dedicated variable, it's
|
|
2148
2137
|
// OK that way.
|
|
2149
|
-
*operand1 =
|
|
2138
|
+
*operand1 = Nuitka_PyInt_FromLong(clong_result);
|
|
2150
2139
|
goto exit_result_ok;
|
|
2151
2140
|
|
|
2152
2141
|
exit_result_object:
|
|
@@ -2279,7 +2268,7 @@ static inline bool _INPLACE_OPERATION_MOD_STR_INT(PyObject **operand1, PyObject
|
|
|
2279
2268
|
goto exit_inplace_result_object;
|
|
2280
2269
|
}
|
|
2281
2270
|
|
|
2282
|
-
|
|
2271
|
+
Py_DECREF_IMMORTAL(x);
|
|
2283
2272
|
}
|
|
2284
2273
|
|
|
2285
2274
|
if (slot2 != NULL) {
|
|
@@ -2290,12 +2279,12 @@ static inline bool _INPLACE_OPERATION_MOD_STR_INT(PyObject **operand1, PyObject
|
|
|
2290
2279
|
goto exit_inplace_result_object;
|
|
2291
2280
|
}
|
|
2292
2281
|
|
|
2293
|
-
|
|
2282
|
+
Py_DECREF_IMMORTAL(x);
|
|
2294
2283
|
}
|
|
2295
2284
|
|
|
2296
2285
|
// Statically recognized that coercion is not possible with these types
|
|
2297
2286
|
|
|
2298
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2287
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'int'");
|
|
2299
2288
|
goto exit_inplace_exception;
|
|
2300
2289
|
}
|
|
2301
2290
|
|
|
@@ -2362,7 +2351,7 @@ static inline bool _INPLACE_OPERATION_MOD_STR_LONG(PyObject **operand1, PyObject
|
|
|
2362
2351
|
goto exit_inplace_result_object;
|
|
2363
2352
|
}
|
|
2364
2353
|
|
|
2365
|
-
|
|
2354
|
+
Py_DECREF_IMMORTAL(x);
|
|
2366
2355
|
}
|
|
2367
2356
|
|
|
2368
2357
|
if (slot2 != NULL) {
|
|
@@ -2373,12 +2362,12 @@ static inline bool _INPLACE_OPERATION_MOD_STR_LONG(PyObject **operand1, PyObject
|
|
|
2373
2362
|
goto exit_inplace_result_object;
|
|
2374
2363
|
}
|
|
2375
2364
|
|
|
2376
|
-
|
|
2365
|
+
Py_DECREF_IMMORTAL(x);
|
|
2377
2366
|
}
|
|
2378
2367
|
|
|
2379
2368
|
// Statically recognized that coercion is not possible with these types
|
|
2380
2369
|
|
|
2381
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2370
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'long'");
|
|
2382
2371
|
goto exit_inplace_exception;
|
|
2383
2372
|
}
|
|
2384
2373
|
|
|
@@ -2445,7 +2434,7 @@ static inline bool _INPLACE_OPERATION_MOD_STR_FLOAT(PyObject **operand1, PyObjec
|
|
|
2445
2434
|
goto exit_inplace_result_object;
|
|
2446
2435
|
}
|
|
2447
2436
|
|
|
2448
|
-
|
|
2437
|
+
Py_DECREF_IMMORTAL(x);
|
|
2449
2438
|
}
|
|
2450
2439
|
|
|
2451
2440
|
if (slot2 != NULL) {
|
|
@@ -2456,12 +2445,12 @@ static inline bool _INPLACE_OPERATION_MOD_STR_FLOAT(PyObject **operand1, PyObjec
|
|
|
2456
2445
|
goto exit_inplace_result_object;
|
|
2457
2446
|
}
|
|
2458
2447
|
|
|
2459
|
-
|
|
2448
|
+
Py_DECREF_IMMORTAL(x);
|
|
2460
2449
|
}
|
|
2461
2450
|
|
|
2462
2451
|
// Statically recognized that coercion is not possible with these types
|
|
2463
2452
|
|
|
2464
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2453
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'float'");
|
|
2465
2454
|
goto exit_inplace_exception;
|
|
2466
2455
|
}
|
|
2467
2456
|
|
|
@@ -2568,7 +2557,7 @@ static inline bool _INPLACE_OPERATION_MOD_STR_UNICODE(PyObject **operand1, PyObj
|
|
|
2568
2557
|
goto exit_inplace_result_object;
|
|
2569
2558
|
}
|
|
2570
2559
|
|
|
2571
|
-
|
|
2560
|
+
Py_DECREF_IMMORTAL(x);
|
|
2572
2561
|
}
|
|
2573
2562
|
|
|
2574
2563
|
if (slot2 != NULL) {
|
|
@@ -2579,12 +2568,12 @@ static inline bool _INPLACE_OPERATION_MOD_STR_UNICODE(PyObject **operand1, PyObj
|
|
|
2579
2568
|
goto exit_inplace_result_object;
|
|
2580
2569
|
}
|
|
2581
2570
|
|
|
2582
|
-
|
|
2571
|
+
Py_DECREF_IMMORTAL(x);
|
|
2583
2572
|
}
|
|
2584
2573
|
|
|
2585
2574
|
// Statically recognized that coercion is not possible with these types
|
|
2586
2575
|
|
|
2587
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2576
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'unicode'");
|
|
2588
2577
|
goto exit_inplace_exception;
|
|
2589
2578
|
}
|
|
2590
2579
|
|
|
@@ -2644,12 +2633,12 @@ static inline bool _INPLACE_OPERATION_MOD_STR_TUPLE(PyObject **operand1, PyObjec
|
|
|
2644
2633
|
goto exit_inplace_result_object;
|
|
2645
2634
|
}
|
|
2646
2635
|
|
|
2647
|
-
|
|
2636
|
+
Py_DECREF_IMMORTAL(x);
|
|
2648
2637
|
}
|
|
2649
2638
|
|
|
2650
2639
|
// Statically recognized that coercion is not possible with these types
|
|
2651
2640
|
|
|
2652
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2641
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'tuple'");
|
|
2653
2642
|
goto exit_inplace_exception;
|
|
2654
2643
|
}
|
|
2655
2644
|
|
|
@@ -2709,12 +2698,12 @@ static inline bool _INPLACE_OPERATION_MOD_STR_LIST(PyObject **operand1, PyObject
|
|
|
2709
2698
|
goto exit_inplace_result_object;
|
|
2710
2699
|
}
|
|
2711
2700
|
|
|
2712
|
-
|
|
2701
|
+
Py_DECREF_IMMORTAL(x);
|
|
2713
2702
|
}
|
|
2714
2703
|
|
|
2715
2704
|
// Statically recognized that coercion is not possible with these types
|
|
2716
2705
|
|
|
2717
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2706
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'list'");
|
|
2718
2707
|
goto exit_inplace_exception;
|
|
2719
2708
|
}
|
|
2720
2709
|
|
|
@@ -2774,12 +2763,12 @@ static inline bool _INPLACE_OPERATION_MOD_STR_DICT(PyObject **operand1, PyObject
|
|
|
2774
2763
|
goto exit_inplace_result_object;
|
|
2775
2764
|
}
|
|
2776
2765
|
|
|
2777
|
-
|
|
2766
|
+
Py_DECREF_IMMORTAL(x);
|
|
2778
2767
|
}
|
|
2779
2768
|
|
|
2780
2769
|
// Statically recognized that coercion is not possible with these types
|
|
2781
2770
|
|
|
2782
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2771
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'dict'");
|
|
2783
2772
|
goto exit_inplace_exception;
|
|
2784
2773
|
}
|
|
2785
2774
|
|
|
@@ -2848,7 +2837,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_STR_OBJECT(PyObject **op
|
|
|
2848
2837
|
goto exit_inplace_result_object;
|
|
2849
2838
|
}
|
|
2850
2839
|
|
|
2851
|
-
|
|
2840
|
+
Py_DECREF_IMMORTAL(x);
|
|
2852
2841
|
slot2 = NULL;
|
|
2853
2842
|
}
|
|
2854
2843
|
}
|
|
@@ -2860,7 +2849,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_STR_OBJECT(PyObject **op
|
|
|
2860
2849
|
goto exit_inplace_result_object;
|
|
2861
2850
|
}
|
|
2862
2851
|
|
|
2863
|
-
|
|
2852
|
+
Py_DECREF_IMMORTAL(x);
|
|
2864
2853
|
}
|
|
2865
2854
|
|
|
2866
2855
|
if (slot2 != NULL) {
|
|
@@ -2871,7 +2860,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_STR_OBJECT(PyObject **op
|
|
|
2871
2860
|
goto exit_inplace_result_object;
|
|
2872
2861
|
}
|
|
2873
2862
|
|
|
2874
|
-
|
|
2863
|
+
Py_DECREF_IMMORTAL(x);
|
|
2875
2864
|
}
|
|
2876
2865
|
|
|
2877
2866
|
#if PYTHON_VERSION < 0x300
|
|
@@ -2914,7 +2903,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_STR_OBJECT(PyObject **op
|
|
|
2914
2903
|
}
|
|
2915
2904
|
#endif
|
|
2916
2905
|
|
|
2917
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
2906
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and '%s'", type2->tp_name);
|
|
2918
2907
|
goto exit_inplace_exception;
|
|
2919
2908
|
}
|
|
2920
2909
|
|
|
@@ -3020,7 +3009,7 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_INT(PyObject **operand1, PyObj
|
|
|
3020
3009
|
goto exit_inplace_result_object;
|
|
3021
3010
|
}
|
|
3022
3011
|
|
|
3023
|
-
|
|
3012
|
+
Py_DECREF_IMMORTAL(x);
|
|
3024
3013
|
}
|
|
3025
3014
|
|
|
3026
3015
|
if (slot2 != NULL) {
|
|
@@ -3031,12 +3020,12 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_INT(PyObject **operand1, PyObj
|
|
|
3031
3020
|
goto exit_inplace_result_object;
|
|
3032
3021
|
}
|
|
3033
3022
|
|
|
3034
|
-
|
|
3023
|
+
Py_DECREF_IMMORTAL(x);
|
|
3035
3024
|
}
|
|
3036
3025
|
|
|
3037
3026
|
// Statically recognized that coercion is not possible with these types
|
|
3038
3027
|
|
|
3039
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3028
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'unicode' and 'int'");
|
|
3040
3029
|
goto exit_inplace_exception;
|
|
3041
3030
|
}
|
|
3042
3031
|
|
|
@@ -3103,7 +3092,7 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_LONG(PyObject **operand1, PyOb
|
|
|
3103
3092
|
goto exit_inplace_result_object;
|
|
3104
3093
|
}
|
|
3105
3094
|
|
|
3106
|
-
|
|
3095
|
+
Py_DECREF_IMMORTAL(x);
|
|
3107
3096
|
}
|
|
3108
3097
|
|
|
3109
3098
|
if (slot2 != NULL) {
|
|
@@ -3114,15 +3103,15 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_LONG(PyObject **operand1, PyOb
|
|
|
3114
3103
|
goto exit_inplace_result_object;
|
|
3115
3104
|
}
|
|
3116
3105
|
|
|
3117
|
-
|
|
3106
|
+
Py_DECREF_IMMORTAL(x);
|
|
3118
3107
|
}
|
|
3119
3108
|
|
|
3120
3109
|
// Statically recognized that coercion is not possible with these types
|
|
3121
3110
|
|
|
3122
3111
|
#if PYTHON_VERSION < 0x300
|
|
3123
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3112
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'unicode' and 'long'");
|
|
3124
3113
|
#else
|
|
3125
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3114
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'int'");
|
|
3126
3115
|
#endif
|
|
3127
3116
|
goto exit_inplace_exception;
|
|
3128
3117
|
}
|
|
@@ -3188,7 +3177,7 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_FLOAT(PyObject **operand1, PyO
|
|
|
3188
3177
|
goto exit_inplace_result_object;
|
|
3189
3178
|
}
|
|
3190
3179
|
|
|
3191
|
-
|
|
3180
|
+
Py_DECREF_IMMORTAL(x);
|
|
3192
3181
|
}
|
|
3193
3182
|
|
|
3194
3183
|
if (slot2 != NULL) {
|
|
@@ -3199,15 +3188,15 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_FLOAT(PyObject **operand1, PyO
|
|
|
3199
3188
|
goto exit_inplace_result_object;
|
|
3200
3189
|
}
|
|
3201
3190
|
|
|
3202
|
-
|
|
3191
|
+
Py_DECREF_IMMORTAL(x);
|
|
3203
3192
|
}
|
|
3204
3193
|
|
|
3205
3194
|
// Statically recognized that coercion is not possible with these types
|
|
3206
3195
|
|
|
3207
3196
|
#if PYTHON_VERSION < 0x300
|
|
3208
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3197
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'unicode' and 'float'");
|
|
3209
3198
|
#else
|
|
3210
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3199
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'float'");
|
|
3211
3200
|
#endif
|
|
3212
3201
|
goto exit_inplace_exception;
|
|
3213
3202
|
}
|
|
@@ -3274,7 +3263,7 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_STR(PyObject **operand1, PyObj
|
|
|
3274
3263
|
goto exit_inplace_result_object;
|
|
3275
3264
|
}
|
|
3276
3265
|
|
|
3277
|
-
|
|
3266
|
+
Py_DECREF_IMMORTAL(x);
|
|
3278
3267
|
}
|
|
3279
3268
|
|
|
3280
3269
|
if (slot2 != NULL) {
|
|
@@ -3285,12 +3274,12 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_STR(PyObject **operand1, PyObj
|
|
|
3285
3274
|
goto exit_inplace_result_object;
|
|
3286
3275
|
}
|
|
3287
3276
|
|
|
3288
|
-
|
|
3277
|
+
Py_DECREF_IMMORTAL(x);
|
|
3289
3278
|
}
|
|
3290
3279
|
|
|
3291
3280
|
// Statically recognized that coercion is not possible with these types
|
|
3292
3281
|
|
|
3293
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3282
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'unicode' and 'str'");
|
|
3294
3283
|
goto exit_inplace_exception;
|
|
3295
3284
|
}
|
|
3296
3285
|
|
|
@@ -3357,7 +3346,7 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_BYTES(PyObject **operand1, PyO
|
|
|
3357
3346
|
goto exit_inplace_result_object;
|
|
3358
3347
|
}
|
|
3359
3348
|
|
|
3360
|
-
|
|
3349
|
+
Py_DECREF_IMMORTAL(x);
|
|
3361
3350
|
}
|
|
3362
3351
|
|
|
3363
3352
|
if (slot2 != NULL) {
|
|
@@ -3368,12 +3357,12 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_BYTES(PyObject **operand1, PyO
|
|
|
3368
3357
|
goto exit_inplace_result_object;
|
|
3369
3358
|
}
|
|
3370
3359
|
|
|
3371
|
-
|
|
3360
|
+
Py_DECREF_IMMORTAL(x);
|
|
3372
3361
|
}
|
|
3373
3362
|
|
|
3374
3363
|
// Statically recognized that coercion is not possible with these types
|
|
3375
3364
|
|
|
3376
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3365
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'bytes'");
|
|
3377
3366
|
goto exit_inplace_exception;
|
|
3378
3367
|
}
|
|
3379
3368
|
|
|
@@ -3471,15 +3460,15 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_TUPLE(PyObject **operand1, PyO
|
|
|
3471
3460
|
goto exit_inplace_result_object;
|
|
3472
3461
|
}
|
|
3473
3462
|
|
|
3474
|
-
|
|
3463
|
+
Py_DECREF_IMMORTAL(x);
|
|
3475
3464
|
}
|
|
3476
3465
|
|
|
3477
3466
|
// Statically recognized that coercion is not possible with these types
|
|
3478
3467
|
|
|
3479
3468
|
#if PYTHON_VERSION < 0x300
|
|
3480
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3469
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'unicode' and 'tuple'");
|
|
3481
3470
|
#else
|
|
3482
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3471
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'tuple'");
|
|
3483
3472
|
#endif
|
|
3484
3473
|
goto exit_inplace_exception;
|
|
3485
3474
|
}
|
|
@@ -3538,15 +3527,15 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_LIST(PyObject **operand1, PyOb
|
|
|
3538
3527
|
goto exit_inplace_result_object;
|
|
3539
3528
|
}
|
|
3540
3529
|
|
|
3541
|
-
|
|
3530
|
+
Py_DECREF_IMMORTAL(x);
|
|
3542
3531
|
}
|
|
3543
3532
|
|
|
3544
3533
|
// Statically recognized that coercion is not possible with these types
|
|
3545
3534
|
|
|
3546
3535
|
#if PYTHON_VERSION < 0x300
|
|
3547
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3536
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'unicode' and 'list'");
|
|
3548
3537
|
#else
|
|
3549
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3538
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'list'");
|
|
3550
3539
|
#endif
|
|
3551
3540
|
goto exit_inplace_exception;
|
|
3552
3541
|
}
|
|
@@ -3605,15 +3594,15 @@ static inline bool _INPLACE_OPERATION_MOD_UNICODE_DICT(PyObject **operand1, PyOb
|
|
|
3605
3594
|
goto exit_inplace_result_object;
|
|
3606
3595
|
}
|
|
3607
3596
|
|
|
3608
|
-
|
|
3597
|
+
Py_DECREF_IMMORTAL(x);
|
|
3609
3598
|
}
|
|
3610
3599
|
|
|
3611
3600
|
// Statically recognized that coercion is not possible with these types
|
|
3612
3601
|
|
|
3613
3602
|
#if PYTHON_VERSION < 0x300
|
|
3614
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3603
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'unicode' and 'dict'");
|
|
3615
3604
|
#else
|
|
3616
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3605
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and 'dict'");
|
|
3617
3606
|
#endif
|
|
3618
3607
|
goto exit_inplace_exception;
|
|
3619
3608
|
}
|
|
@@ -3681,7 +3670,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_UNICODE_OBJECT(PyObject
|
|
|
3681
3670
|
goto exit_inplace_result_object;
|
|
3682
3671
|
}
|
|
3683
3672
|
|
|
3684
|
-
|
|
3673
|
+
Py_DECREF_IMMORTAL(x);
|
|
3685
3674
|
slot2 = NULL;
|
|
3686
3675
|
}
|
|
3687
3676
|
}
|
|
@@ -3693,7 +3682,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_UNICODE_OBJECT(PyObject
|
|
|
3693
3682
|
goto exit_inplace_result_object;
|
|
3694
3683
|
}
|
|
3695
3684
|
|
|
3696
|
-
|
|
3685
|
+
Py_DECREF_IMMORTAL(x);
|
|
3697
3686
|
}
|
|
3698
3687
|
|
|
3699
3688
|
if (slot2 != NULL) {
|
|
@@ -3704,7 +3693,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_UNICODE_OBJECT(PyObject
|
|
|
3704
3693
|
goto exit_inplace_result_object;
|
|
3705
3694
|
}
|
|
3706
3695
|
|
|
3707
|
-
|
|
3696
|
+
Py_DECREF_IMMORTAL(x);
|
|
3708
3697
|
}
|
|
3709
3698
|
|
|
3710
3699
|
#if PYTHON_VERSION < 0x300
|
|
@@ -3748,9 +3737,9 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_UNICODE_OBJECT(PyObject
|
|
|
3748
3737
|
#endif
|
|
3749
3738
|
|
|
3750
3739
|
#if PYTHON_VERSION < 0x300
|
|
3751
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3740
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'unicode' and '%s'", type2->tp_name);
|
|
3752
3741
|
#else
|
|
3753
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3742
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'str' and '%s'", type2->tp_name);
|
|
3754
3743
|
#endif
|
|
3755
3744
|
goto exit_inplace_exception;
|
|
3756
3745
|
}
|
|
@@ -3856,7 +3845,7 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_LONG(PyObject **operand1, PyObje
|
|
|
3856
3845
|
goto exit_inplace_result_object;
|
|
3857
3846
|
}
|
|
3858
3847
|
|
|
3859
|
-
|
|
3848
|
+
Py_DECREF_IMMORTAL(x);
|
|
3860
3849
|
}
|
|
3861
3850
|
|
|
3862
3851
|
if (slot2 != NULL) {
|
|
@@ -3867,12 +3856,12 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_LONG(PyObject **operand1, PyObje
|
|
|
3867
3856
|
goto exit_inplace_result_object;
|
|
3868
3857
|
}
|
|
3869
3858
|
|
|
3870
|
-
|
|
3859
|
+
Py_DECREF_IMMORTAL(x);
|
|
3871
3860
|
}
|
|
3872
3861
|
|
|
3873
3862
|
// Statically recognized that coercion is not possible with these types
|
|
3874
3863
|
|
|
3875
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3864
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'bytes' and 'int'");
|
|
3876
3865
|
goto exit_inplace_exception;
|
|
3877
3866
|
}
|
|
3878
3867
|
|
|
@@ -3939,7 +3928,7 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_FLOAT(PyObject **operand1, PyObj
|
|
|
3939
3928
|
goto exit_inplace_result_object;
|
|
3940
3929
|
}
|
|
3941
3930
|
|
|
3942
|
-
|
|
3931
|
+
Py_DECREF_IMMORTAL(x);
|
|
3943
3932
|
}
|
|
3944
3933
|
|
|
3945
3934
|
if (slot2 != NULL) {
|
|
@@ -3950,12 +3939,12 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_FLOAT(PyObject **operand1, PyObj
|
|
|
3950
3939
|
goto exit_inplace_result_object;
|
|
3951
3940
|
}
|
|
3952
3941
|
|
|
3953
|
-
|
|
3942
|
+
Py_DECREF_IMMORTAL(x);
|
|
3954
3943
|
}
|
|
3955
3944
|
|
|
3956
3945
|
// Statically recognized that coercion is not possible with these types
|
|
3957
3946
|
|
|
3958
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
3947
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'bytes' and 'float'");
|
|
3959
3948
|
goto exit_inplace_exception;
|
|
3960
3949
|
}
|
|
3961
3950
|
|
|
@@ -4063,7 +4052,7 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_UNICODE(PyObject **operand1, PyO
|
|
|
4063
4052
|
goto exit_inplace_result_object;
|
|
4064
4053
|
}
|
|
4065
4054
|
|
|
4066
|
-
|
|
4055
|
+
Py_DECREF_IMMORTAL(x);
|
|
4067
4056
|
}
|
|
4068
4057
|
|
|
4069
4058
|
if (slot2 != NULL) {
|
|
@@ -4074,12 +4063,12 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_UNICODE(PyObject **operand1, PyO
|
|
|
4074
4063
|
goto exit_inplace_result_object;
|
|
4075
4064
|
}
|
|
4076
4065
|
|
|
4077
|
-
|
|
4066
|
+
Py_DECREF_IMMORTAL(x);
|
|
4078
4067
|
}
|
|
4079
4068
|
|
|
4080
4069
|
// Statically recognized that coercion is not possible with these types
|
|
4081
4070
|
|
|
4082
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
4071
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'bytes' and 'str'");
|
|
4083
4072
|
goto exit_inplace_exception;
|
|
4084
4073
|
}
|
|
4085
4074
|
|
|
@@ -4139,12 +4128,12 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_TUPLE(PyObject **operand1, PyObj
|
|
|
4139
4128
|
goto exit_inplace_result_object;
|
|
4140
4129
|
}
|
|
4141
4130
|
|
|
4142
|
-
|
|
4131
|
+
Py_DECREF_IMMORTAL(x);
|
|
4143
4132
|
}
|
|
4144
4133
|
|
|
4145
4134
|
// Statically recognized that coercion is not possible with these types
|
|
4146
4135
|
|
|
4147
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
4136
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'bytes' and 'tuple'");
|
|
4148
4137
|
goto exit_inplace_exception;
|
|
4149
4138
|
}
|
|
4150
4139
|
|
|
@@ -4204,12 +4193,12 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_LIST(PyObject **operand1, PyObje
|
|
|
4204
4193
|
goto exit_inplace_result_object;
|
|
4205
4194
|
}
|
|
4206
4195
|
|
|
4207
|
-
|
|
4196
|
+
Py_DECREF_IMMORTAL(x);
|
|
4208
4197
|
}
|
|
4209
4198
|
|
|
4210
4199
|
// Statically recognized that coercion is not possible with these types
|
|
4211
4200
|
|
|
4212
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
4201
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'bytes' and 'list'");
|
|
4213
4202
|
goto exit_inplace_exception;
|
|
4214
4203
|
}
|
|
4215
4204
|
|
|
@@ -4269,12 +4258,12 @@ static inline bool _INPLACE_OPERATION_MOD_BYTES_DICT(PyObject **operand1, PyObje
|
|
|
4269
4258
|
goto exit_inplace_result_object;
|
|
4270
4259
|
}
|
|
4271
4260
|
|
|
4272
|
-
|
|
4261
|
+
Py_DECREF_IMMORTAL(x);
|
|
4273
4262
|
}
|
|
4274
4263
|
|
|
4275
4264
|
// Statically recognized that coercion is not possible with these types
|
|
4276
4265
|
|
|
4277
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
4266
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'bytes' and 'dict'");
|
|
4278
4267
|
goto exit_inplace_exception;
|
|
4279
4268
|
}
|
|
4280
4269
|
|
|
@@ -4343,7 +4332,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_BYTES_OBJECT(PyObject **
|
|
|
4343
4332
|
goto exit_inplace_result_object;
|
|
4344
4333
|
}
|
|
4345
4334
|
|
|
4346
|
-
|
|
4335
|
+
Py_DECREF_IMMORTAL(x);
|
|
4347
4336
|
slot2 = NULL;
|
|
4348
4337
|
}
|
|
4349
4338
|
}
|
|
@@ -4355,7 +4344,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_BYTES_OBJECT(PyObject **
|
|
|
4355
4344
|
goto exit_inplace_result_object;
|
|
4356
4345
|
}
|
|
4357
4346
|
|
|
4358
|
-
|
|
4347
|
+
Py_DECREF_IMMORTAL(x);
|
|
4359
4348
|
}
|
|
4360
4349
|
|
|
4361
4350
|
if (slot2 != NULL) {
|
|
@@ -4366,7 +4355,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_BYTES_OBJECT(PyObject **
|
|
|
4366
4355
|
goto exit_inplace_result_object;
|
|
4367
4356
|
}
|
|
4368
4357
|
|
|
4369
|
-
|
|
4358
|
+
Py_DECREF_IMMORTAL(x);
|
|
4370
4359
|
}
|
|
4371
4360
|
|
|
4372
4361
|
#if PYTHON_VERSION < 0x300
|
|
@@ -4409,7 +4398,7 @@ static HEDLEY_NEVER_INLINE bool __INPLACE_OPERATION_MOD_BYTES_OBJECT(PyObject **
|
|
|
4409
4398
|
}
|
|
4410
4399
|
#endif
|
|
4411
4400
|
|
|
4412
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
4401
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: 'bytes' and '%s'", type2->tp_name);
|
|
4413
4402
|
goto exit_inplace_exception;
|
|
4414
4403
|
}
|
|
4415
4404
|
|
|
@@ -4524,6 +4513,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_OBJECT(PyObject **operand1, PyO
|
|
|
4524
4513
|
clong_result = r;
|
|
4525
4514
|
goto exit_result_ok_clong;
|
|
4526
4515
|
}
|
|
4516
|
+
|
|
4527
4517
|
{
|
|
4528
4518
|
PyObject *operand1_object = *operand1;
|
|
4529
4519
|
PyObject *operand2_object = operand2;
|
|
@@ -4542,7 +4532,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_OBJECT(PyObject **operand1, PyO
|
|
|
4542
4532
|
|
|
4543
4533
|
// That's our return value then. As we use a dedicated variable, it's
|
|
4544
4534
|
// OK that way.
|
|
4545
|
-
*operand1 =
|
|
4535
|
+
*operand1 = Nuitka_PyInt_FromLong(clong_result);
|
|
4546
4536
|
goto exit_result_ok;
|
|
4547
4537
|
|
|
4548
4538
|
exit_result_object:
|
|
@@ -4599,7 +4589,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_OBJECT(PyObject **operand1, PyO
|
|
|
4599
4589
|
goto exit_inplace_result_object;
|
|
4600
4590
|
}
|
|
4601
4591
|
|
|
4602
|
-
|
|
4592
|
+
Py_DECREF_IMMORTAL(x);
|
|
4603
4593
|
}
|
|
4604
4594
|
|
|
4605
4595
|
{
|
|
@@ -4628,7 +4618,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_OBJECT(PyObject **operand1, PyO
|
|
|
4628
4618
|
goto exit_inplace_result_object;
|
|
4629
4619
|
}
|
|
4630
4620
|
|
|
4631
|
-
|
|
4621
|
+
Py_DECREF_IMMORTAL(x);
|
|
4632
4622
|
slot2 = NULL;
|
|
4633
4623
|
}
|
|
4634
4624
|
}
|
|
@@ -4640,7 +4630,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_OBJECT(PyObject **operand1, PyO
|
|
|
4640
4630
|
goto exit_inplace_result_object;
|
|
4641
4631
|
}
|
|
4642
4632
|
|
|
4643
|
-
|
|
4633
|
+
Py_DECREF_IMMORTAL(x);
|
|
4644
4634
|
}
|
|
4645
4635
|
|
|
4646
4636
|
if (slot2 != NULL) {
|
|
@@ -4651,7 +4641,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_OBJECT(PyObject **operand1, PyO
|
|
|
4651
4641
|
goto exit_inplace_result_object;
|
|
4652
4642
|
}
|
|
4653
4643
|
|
|
4654
|
-
|
|
4644
|
+
Py_DECREF_IMMORTAL(x);
|
|
4655
4645
|
}
|
|
4656
4646
|
|
|
4657
4647
|
#if PYTHON_VERSION < 0x300
|
|
@@ -4729,7 +4719,7 @@ static inline bool _INPLACE_OPERATION_MOD_OBJECT_OBJECT(PyObject **operand1, PyO
|
|
|
4729
4719
|
}
|
|
4730
4720
|
#endif
|
|
4731
4721
|
|
|
4732
|
-
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for
|
|
4722
|
+
PyErr_Format(PyExc_TypeError, "unsupported operand type(s) for %%=: '%s' and '%s'", type1->tp_name,
|
|
4733
4723
|
type2->tp_name);
|
|
4734
4724
|
goto exit_inplace_exception;
|
|
4735
4725
|
}
|
|
@@ -4755,3 +4745,18 @@ exit_inplace_exception:
|
|
|
4755
4745
|
bool INPLACE_OPERATION_MOD_OBJECT_OBJECT(PyObject **operand1, PyObject *operand2) {
|
|
4756
4746
|
return _INPLACE_OPERATION_MOD_OBJECT_OBJECT(operand1, operand2);
|
|
4757
4747
|
}
|
|
4748
|
+
|
|
4749
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4750
|
+
// integrates with CPython, but also works on its own.
|
|
4751
|
+
//
|
|
4752
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4753
|
+
// you may not use this file except in compliance with the License.
|
|
4754
|
+
// You may obtain a copy of the License at
|
|
4755
|
+
//
|
|
4756
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
4757
|
+
//
|
|
4758
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
4759
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
4760
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4761
|
+
// See the License for the specific language governing permissions and
|
|
4762
|
+
// limitations under the License.
|