diff --git a/llvm/_core.c b/llvm/_core.cpp similarity index 99% rename from llvm/_core.c rename to llvm/_core.cpp index 2bd8484..bccd959 100644 --- a/llvm/_core.c +++ b/llvm/_core.cpp @@ -1067,7 +1067,7 @@ _wLLVMEngineBuilderCreate(PyObject *self, PyObject *args) return NULL; char * outmsg = 0; - + LLVMExecutionEngineRef ee = LLVMEngineBuilderCreate(obj, &outmsg); @@ -1953,7 +1953,8 @@ static PyMethodDef core_methods[] = { // Module main function, hairy because of py3k port - +extern "C" { + #if (PY_MAJOR_VERSION >= 3) struct PyModuleDef module_def = { PyModuleDef_HEAD_INIT, @@ -1987,3 +1988,5 @@ init_core(void) return module; #endif } + +} // end extern C diff --git a/llvm/wrap.c b/llvm/wrap.cpp similarity index 100% rename from llvm/wrap.c rename to llvm/wrap.cpp diff --git a/setup.py b/setup.py index 317d67a..d1450b8 100755 --- a/setup.py +++ b/setup.py @@ -95,7 +95,7 @@ def call_setup(llvm_config): ext_core = Extension( 'llvm._core', - ['llvm/_core.c', 'llvm/wrap.c', 'llvm/extra.cpp'], + ['llvm/_core.cpp', 'llvm/wrap.cpp', 'llvm/extra.cpp'], define_macros = [ ('__STDC_CONSTANT_MACROS', None), ('__STDC_LIMIT_MACROS', None),