diff options
-rw-r--r-- | Cython/Compiler/ModuleNode.py | 2 | ||||
-rw-r--r-- | tests/compile/ctuple_unused_T3543.pyx | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py index fe59836ac..8a1e1e718 100644 --- a/Cython/Compiler/ModuleNode.py +++ b/Cython/Compiler/ModuleNode.py @@ -580,7 +580,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): definition = module is env type_entries = [] for entry in module.type_entries: - if entry.type.is_ctuple: + if entry.type.is_ctuple and entry.used: if entry.name not in ctuple_names: ctuple_names.add(entry.name) type_entries.append(entry) diff --git a/tests/compile/ctuple_unused_T3543.pyx b/tests/compile/ctuple_unused_T3543.pyx new file mode 100644 index 000000000..88446dd64 --- /dev/null +++ b/tests/compile/ctuple_unused_T3543.pyx @@ -0,0 +1,9 @@ +# ticket: 3543 +# mode: compile + +# Views define unused ctuples, including (long,) +from cython cimport view + +# Implicitly generate a ctuple (long,) +obj = None +obj or (1,) |