From eff5558e5d0c6dcc70883962ed3a72a1cc6ad03b Mon Sep 17 00:00:00 2001 From: Jens Vollinga Date: Thu, 25 Mar 2010 10:36:41 +0100 Subject: [PATCH] Fixed a bug in atan2. It gave a division by zero error for calls like atan2(-Pi,0), because arguments like -Pi were not recognized (via info_flags) as negative but as real nevertheless. (cherry picked from commit 9e13d46552bb7852399867b9eb355732b9ded59e) --- ginac/inifcns_trans.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ginac/inifcns_trans.cpp b/ginac/inifcns_trans.cpp index 39931dcd..3f161d21 100644 --- a/ginac/inifcns_trans.cpp +++ b/ginac/inifcns_trans.cpp @@ -842,7 +842,7 @@ static ex atan2_eval(const ex & y, const ex & x) return _ex1_2*Pi; // atan(y, 0), y real and negative -> -Pi/2 - if (y.info(info_flags::negative)) + if (y.info(info_flags::real) && !y.is_zero()) return _ex_1_2*Pi; } -- 2.47.0