diff -r 2c70897e5f98 Tools/clinic/clinic.py --- a/Tools/clinic/clinic.py Fri Aug 01 21:57:49 2014 +0100 +++ b/Tools/clinic/clinic.py Sat Aug 02 02:12:36 2014 +0200 @@ -2858,7 +2858,7 @@ class bool_return_converter(CReturnConve def render(self, function, data): self.declare(data) - self.err_occurred_if("_return_value == -1", data) + self.err_occurred_if("_return_value == (%s)-1" % self.type, data) data.return_conversion.append('return_value = PyBool_FromLong((long)_return_value);\n') class long_return_converter(CReturnConverter): @@ -2868,7 +2868,7 @@ class long_return_converter(CReturnConve def render(self, function, data): self.declare(data) - self.err_occurred_if("_return_value == -1", data) + self.err_occurred_if("_return_value == (%s)-1" % self.type, data) data.return_conversion.append( ''.join(('return_value = ', self.conversion_fn, '(', self.cast, '_return_value);\n')))