diff options
author | Stefan Behnel <stefan_ml@behnel.de> | 2018-06-17 16:42:24 +0200 |
---|---|---|
committer | Stefan Behnel <stefan_ml@behnel.de> | 2018-06-17 16:43:10 +0200 |
commit | 771fe73056af92a77cfc42789c113934ad9855fc (patch) | |
tree | bcdf0fa8787183b539bfb68f1b0affe94392ed96 /Cython/Compiler/ModuleNode.py | |
parent | 46b39552d9f309001964527175e2c3d884eb7e4c (diff) | |
download | cython-771fe73056af92a77cfc42789c113934ad9855fc.tar.gz |
Repair inclusion of TypeImport utility code for api .h files.
Diffstat (limited to 'Cython/Compiler/ModuleNode.py')
-rw-r--r-- | Cython/Compiler/ModuleNode.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py index 0f8d353e3..39184c3b1 100644 --- a/Cython/Compiler/ModuleNode.py +++ b/Cython/Compiler/ModuleNode.py @@ -2980,6 +2980,10 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): # table pointer if any. if type in env.types_imported: return + if type.name not in Code.ctypedef_builtins_map: + # see corresponding condition in generate_type_import_call() below! + code.globalstate.use_utility_code( + UtilityCode.load_cached("TypeImport", "ImportExport.c")) self.generate_type_import_call(type, code, import_generator, error_pos=pos) if type.vtabptr_cname: code.globalstate.use_utility_code( @@ -3018,8 +3022,6 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): assert error_pos is not None error_code = code.error_goto(error_pos) - code.globalstate.use_utility_code( - UtilityCode.load_cached("TypeImport", "ImportExport.c")) module = import_generator.imported_module(module_name, error_code) code.put('%s = __Pyx_ImportType(%s, %s,' % ( type.typeptr_cname, |