]> code.delx.au - gnu-emacs/blobdiff - lisp/calc/calc-math.el
Merge from trunk.
[gnu-emacs] / lisp / calc / calc-math.el
index 7307f32f70c248de94cf976255e002bcef23a940..076dab31fd9fef42ee5d2a525d92b3990c61ae77 100644 (file)
@@ -1,17 +1,16 @@
 ;;; calc-math.el --- mathematical functions for Calc
 
-;; Copyright (C) 1990, 1991, 1992, 1993, 2001, 2002, 2003, 2004,
-;;   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;; Copyright (C) 1990-1993, 2001-2011 Free Software Foundation, Inc.
 
 ;; Author: David Gillespie <daveg@synaptics.com>
 ;; Maintainer: Jay Belanger <jay.p.belanger@gmail.com>
 
 ;; This file is part of GNU Emacs.
 
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -19,9 +18,7 @@
 ;; GNU General Public License for more details.
 
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 
@@ -107,7 +104,14 @@ If this can't be done, return NIL."
               (math-read-number
                (number-to-string
                 (funcall fn 
-                         (string-to-number (math-format-number (math-float x))))))
+                        (string-to-number 
+                         (let 
+                              ((calc-number-radix 10)
+                               (calc-twos-complement-mode nil)
+                               (calc-float-format (list 'float calc-internal-prec))
+                               (calc-group-digits nil)
+                               (calc-point-char "."))
+                           (math-format-number (math-float x)))))))
             (error nil))))))
 
 (defun calc-sqrt (arg)
@@ -1570,7 +1574,7 @@ If this can't be done, return NIL."
         (if calc-infinite-mode
             '(neg (var inf var-inf))
           (math-reject-arg x "*Logarithm of zero")))
-       (calc-symbolic-mode (signal 'inexact-result nil))
+        (calc-symbolic-mode (signal 'inexact-result nil))
        ((Math-numberp x)
         (math-with-extra-prec 2
           (let ((xf (math-float x)))
@@ -2160,5 +2164,4 @@ If this can't be done, return NIL."
 
 (provide 'calc-math)
 
-;; arch-tag: c7367e8e-d0b8-4f70-8577-2fb3f31dbb4c
 ;;; calc-math.el ends here