this patch seems to fix some builtin-related declaration problems for me
authorStefan Behnel <scoder@users.berlios.de>
Sat, 16 Aug 2008 19:58:05 +0000 (21:58 +0200)
committerStefan Behnel <scoder@users.berlios.de>
Sat, 16 Aug 2008 19:58:05 +0000 (21:58 +0200)
Cython/Compiler/CythonScope.py
Cython/Compiler/Symtab.py

index f4896221af3280121a49f1ebced396f4c2d7ee75..289d5743d60906f230d83ac426522e6aa9106063 100644 (file)
@@ -13,7 +13,7 @@ class CythonScope(ModuleScope):
         self.shape_entry = self.declare_cfunction('shape',
                                                   shape_func_type,
                                                   pos=None,
-                                                  visibility='public',
+                                                  visibility='extern',
                                                   cname='<error>')
 
 def create_cython_scope(context):
index 5b547b89b8fbe8527b888fa2b85b612e5e3396ea..fd691a7ca10f5cff187f707be83fcb9e272929b1 100644 (file)
@@ -686,7 +686,7 @@ class BuiltinScope(Scope):
         # If python_equiv == "*", the Python equivalent has the same name
         # as the entry, otherwise it has the name specified by python_equiv.
         name = EncodedString(name)
-        entry = self.declare_cfunction(name, type, None, cname)
+        entry = self.declare_cfunction(name, type, None, cname, visibility='extern')
         entry.utility_code = utility_code
         if python_equiv:
             if python_equiv == "*":