write stararg utility functions only when they are used
authorStefan Behnel <scoder@users.berlios.de>
Thu, 17 Jan 2008 22:54:04 +0000 (23:54 +0100)
committerStefan Behnel <scoder@users.berlios.de>
Thu, 17 Jan 2008 22:54:04 +0000 (23:54 +0100)
Cython/Compiler/Nodes.py

index c4d6d041b5b08df74c3ce597900e9c2994d8344e..08cd0b90a653eb2a91a172b8cc032cfe64f256a4 100644 (file)
@@ -962,9 +962,11 @@ class DefNode(FuncDefNode):
         self.declare_pyfunction(env)
         self.analyse_signature(env)
         self.return_type = self.entry.signature.return_type()
-        if self.star_arg or self.starstar_arg or self.num_kwonly_args > 0:
+        if self.star_arg:
             env.use_utility_code(get_stararg_utility_code)
+        if self.starstar_arg:
             env.use_utility_code(get_splitkeywords_utility_code)
+        if self.num_required_kw_args:
             env.use_utility_code(get_checkkeywords_utility_code)
 
     def analyse_signature(self, env):