From 64880e7d69bf6de33117bdc0e7e9ad792cc7d720 Mon Sep 17 00:00:00 2001 From: Siu Kwan Lam Date: Tue, 8 Jan 2013 16:09:45 -0600 Subject: [PATCH] Fix invalid use of long for address. Use unsigned long long for cross-platform 64-bit int. --- llvm/_core.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/llvm/_core.cpp b/llvm/_core.cpp index 2c95a12..0dd1f7b 100644 --- a/llvm/_core.cpp +++ b/llvm/_core.cpp @@ -1348,16 +1348,13 @@ _wLLVMAddGlobalMapping(PyObject *self, PyObject *args) LLVMPY_TRY PyObject *obj_ee; PyObject *obj_val; - long int address; + unsigned long long address; - if (!PyArg_ParseTuple(args, "OOl", &obj_ee, &obj_val, &address)) + if (!PyArg_ParseTuple(args, "OOK", &obj_ee, &obj_val, &address)) return NULL; const LLVMExecutionEngineRef ee = pycap_get( obj_ee ); const LLVMValueRef val = pycap_get( obj_val ); - - if (address == (unsigned long long)-1) - return NULL; LLVMAddGlobalMapping(ee, val, (void*) address);