Commit 8cd71f08 authored by Craig Citro's avatar Craig Citro

Various cosmetic touch-ups.

parent d817949d
...@@ -5337,13 +5337,12 @@ class PowNode(NumBinopNode): ...@@ -5337,13 +5337,12 @@ class PowNode(NumBinopNode):
self.operand2.result()) self.operand2.result())
# Note: This class is temporary "shut down" into an ineffective mode temp # Note: This class is temporarily "shut down" into an ineffective temp
# allocation mode. # allocation mode.
# #
# More sophisticated temp reuse was going on before, # More sophisticated temp reuse was going on before, one could have a
# one could have a look at adding this again after /all/ classes # look at adding this again after /all/ classes are converted to the
# are converted to the new temp scheme. (The temp juggling cannot work # new temp scheme. (The temp juggling cannot work otherwise).
# otherwise).
class BoolBinopNode(ExprNode): class BoolBinopNode(ExprNode):
# Short-circuiting boolean operation. # Short-circuiting boolean operation.
# #
......
...@@ -1444,8 +1444,9 @@ class OptimizeBuiltinCalls(Visitor.EnvTransform): ...@@ -1444,8 +1444,9 @@ class OptimizeBuiltinCalls(Visitor.EnvTransform):
elif len(pos_args) != 1: elif len(pos_args) != 1:
self._error_wrong_arg_count('bool', node, pos_args, '0 or 1') self._error_wrong_arg_count('bool', node, pos_args, '0 or 1')
return node return node
return pos_args[0].coerce_to_boolean( else:
self.current_env()).coerce_to_pyobject(self.current_env()) return pos_args[0].coerce_to_boolean(
self.current_env()).coerce_to_pyobject(self.current_env())
### builtin functions ### builtin functions
......
...@@ -2426,7 +2426,7 @@ def independent_spanning_type(type1, type2): ...@@ -2426,7 +2426,7 @@ def independent_spanning_type(type1, type2):
elif (type1 is c_bint_type or type2 is c_bint_type) and (type1.is_numeric and type2.is_numeric): elif (type1 is c_bint_type or type2 is c_bint_type) and (type1.is_numeric and type2.is_numeric):
# special case: if one of the results is a bint and the other # special case: if one of the results is a bint and the other
# is another C integer, we must prevent returning a numeric # is another C integer, we must prevent returning a numeric
# type so that we do not loose the ability to coerce to a # type so that we do not lose the ability to coerce to a
# Python bool if we have to. # Python bool if we have to.
return py_object_type return py_object_type
span_type = _spanning_type(type1, type2) span_type = _spanning_type(type1, type2)
......
...@@ -296,7 +296,8 @@ def find_spanning_type(type1, type2): ...@@ -296,7 +296,8 @@ def find_spanning_type(type1, type2):
return py_object_type return py_object_type
else: else:
result_type = PyrexTypes.spanning_type(type1, type2) result_type = PyrexTypes.spanning_type(type1, type2)
if result_type in (PyrexTypes.c_double_type, PyrexTypes.c_float_type, Builtin.float_type): if result_type in (PyrexTypes.c_double_type, PyrexTypes.c_float_type,
Builtin.float_type):
# Python's float type is just a C double, so it's safe to # Python's float type is just a C double, so it's safe to
# use the C type instead # use the C type instead
return PyrexTypes.c_double_type return PyrexTypes.c_double_type
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment