summaryrefslogtreecommitdiff
path: root/Cython/Compiler
diff options
context:
space:
mode:
authorJeroen Demeyer <jdemeyer@cage.ugent.be>2015-03-21 09:10:03 +0100
committerJeroen Demeyer <jdemeyer@cage.ugent.be>2015-03-21 09:10:03 +0100
commite310ccb4e933ea0ca986b69dfe325c3643d5cf78 (patch)
treee08fb199876b523c56c74776b8c25f1d42c8cff9 /Cython/Compiler
parentc6a6dd71719813271778dcf4db0a252ec5ed19c4 (diff)
downloadcython-e310ccb4e933ea0ca986b69dfe325c3643d5cf78.tar.gz
Use different mangling prefix in foo_api.h files
Diffstat (limited to 'Cython/Compiler')
-rw-r--r--Cython/Compiler/ModuleNode.py8
-rw-r--r--Cython/Compiler/Naming.py2
2 files changed, 6 insertions, 4 deletions
diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py
index f09313c81..7a06009da 100644
--- a/Cython/Compiler/ModuleNode.py
+++ b/Cython/Compiler/ModuleNode.py
@@ -223,14 +223,14 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
h_code.putln("")
for entry in api_funcs:
type = CPtrType(entry.type)
- cname = env.mangle(Naming.func_prefix, entry.name)
+ cname = env.mangle(Naming.func_prefix_api, entry.name)
h_code.putln("static %s = 0;" % type.declaration_code(cname))
h_code.putln("#define %s %s" % (entry.name, cname))
if api_vars:
h_code.putln("")
for entry in api_vars:
type = CPtrType(entry.type)
- cname = env.mangle(Naming.varptr_prefix, entry.name)
+ cname = env.mangle(Naming.varptr_prefix_api, entry.name)
h_code.putln("static %s = 0;" % type.declaration_code(cname))
h_code.putln("#define %s (*%s)" % (entry.name, cname))
h_code.put(UtilityCode.load_as_string("PyIdentifierFromString", "ImportExport.c")[0])
@@ -247,13 +247,13 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
h_code.putln('module = __Pyx_ImportModule("%s");' % env.qualified_name)
h_code.putln("if (!module) goto bad;")
for entry in api_funcs:
- cname = env.mangle(Naming.func_prefix, entry.name)
+ cname = env.mangle(Naming.func_prefix_api, entry.name)
sig = entry.type.signature_string()
h_code.putln(
'if (__Pyx_ImportFunction(module, "%s", (void (**)(void))&%s, "%s") < 0) goto bad;'
% (entry.name, cname, sig))
for entry in api_vars:
- cname = env.mangle(Naming.varptr_prefix, entry.name)
+ cname = env.mangle(Naming.varptr_prefix_api, entry.name)
sig = entry.type.empty_declaration_code()
h_code.putln(
'if (__Pyx_ImportVoidPtr(module, "%s", (void **)&%s, "%s") < 0) goto bad;'
diff --git a/Cython/Compiler/Naming.py b/Cython/Compiler/Naming.py
index 55c1f87c2..6539b3471 100644
--- a/Cython/Compiler/Naming.py
+++ b/Cython/Compiler/Naming.py
@@ -18,6 +18,7 @@ arg_prefix = pyrex_prefix + "arg_"
funcdoc_prefix = pyrex_prefix + "doc_"
enum_prefix = pyrex_prefix + "e_"
func_prefix = pyrex_prefix + "f_"
+func_prefix_api = pyrex_prefix + "api_f_"
pyfunc_prefix = pyrex_prefix + "pf_"
pywrap_prefix = pyrex_prefix + "pw_"
genbody_prefix = pyrex_prefix + "gb_"
@@ -36,6 +37,7 @@ type_prefix = pyrex_prefix + "t_"
typeobj_prefix = pyrex_prefix + "type_"
var_prefix = pyrex_prefix + "v_"
varptr_prefix = pyrex_prefix + "vp_"
+varptr_prefix_api = pyrex_prefix + "api_vp_"
wrapperbase_prefix= pyrex_prefix + "wrapperbase_"
pybuffernd_prefix = pyrex_prefix + "pybuffernd_"
pybufferstruct_prefix = pyrex_prefix + "pybuffer_"