diff --git a/bindings/python/llvm/core.py b/bindings/python/llvm/core.py index f7f3748d4c3..19b4bbec256 100644 --- a/bindings/python/llvm/core.py +++ b/bindings/python/llvm/core.py @@ -125,8 +125,9 @@ class Module(LLVMObject): def print_module_to_file(self, filename): out = c_char_p(None) - result = lib.LLVMPrintModuleToFile(self, filename, byref(out)) - if not result: + # Result is inverted so 0 means everything was ok. + result = lib.LLVMPrintModuleToFile(self, filename, byref(out)) + if result: raise RuntimeError("LLVM Error: %s" % out.value) class Context(LLVMObject): diff --git a/bindings/python/llvm/tests/test_core.py b/bindings/python/llvm/tests/test_core.py index e5fffbae59c..07a574e5858 100644 --- a/bindings/python/llvm/tests/test_core.py +++ b/bindings/python/llvm/tests/test_core.py @@ -37,7 +37,7 @@ class TestCore(TestBase): def test_create_module_with_name(self): # Make sure we can not create a module without a LLVMModuleRef. - with self.assertRaises(RuntimeError): + with self.assertRaises(TypeError): m = Module() m = Module.CreateWithName("test-module") @@ -49,7 +49,8 @@ class TestCore(TestBase): def test_module_getset_target(self): m = Module.CreateWithName("test-module") - m.target = "thumbv7-apple-ios5.0.0" + target = "thumbv7-apple-ios5.0.0" + m.target = target self.assertEqual(m.target, target) def test_module_print_module_to_file(self):