Mercurial > hg > octave-nkf
diff src/ov-base-scalar.cc @ 8626:1dce30ab0e72
don't convert NaN to logical in bool expressions
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 29 Jan 2009 12:50:25 -0500 |
parents | f00578b495e9 |
children | eb63fbe60fab |
line wrap: on
line diff
--- a/src/ov-base-scalar.cc +++ b/src/ov-base-scalar.cc @@ -101,6 +101,20 @@ } template <class ST> +bool +octave_base_scalar<ST>::is_true (void) const +{ + bool retval = false; + + if (xisnan (scalar)) + error ("invalid conversion from NaN to logical"); + else + retval = (scalar != ST ()); + + return retval; +} + +template <class ST> void octave_base_scalar<ST>::print (std::ostream& os, bool pr_as_read_syntax) const {