Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November. Change these FTP URLs to https://ftp.gnu.org
instead. Make similar changes for URLs to other organizations moving
away from FTP. Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
Don't use the angle mode, use the angle units included
in the expression instead (Bug#23889).
* lisp/calc/calc-alg.el (calc-input-angle-units): New defun.
(math-simplify): Use it.
* lisp/calc/calc-forms.el (math-to-hms, math-from-hms):
Don't use calc-angle-mode if math-simplifying-units is non-nil.
* lisp/calc/calc-math.el (calcFunc-nroot, math-from-radians)
(math-to-radians-2, math-from-radians-2): Don't convert angle
to radians if math-simplifying-units is non-nil.
* test/lisp/calc/calc-tests.el (test-calc-23889): Add test.
* lisp/calc/calc-alg.el (math-beforep):
* lisp/progmodes/cc-guess.el (c-guess-view-reorder-offsets-alist-in-style):
Simplify because string-lessp can accept symbols as args.
(math-normalize): Set `math-normalize-error' to t when there's an error.
calc/calc-alg.el (math-simplify): Don't simplify when `math-normalize'
returns an error.
(math-eval-rules-cache, math-eval-rules-cache-other): Declared them.
(math-top-only): New variable
(math-simplify, math-simplify-step): Replace variable top-only by
declared variable math-top-only.
(math-simplify-expr): Declared it.
Replaced argument expr in all calls of math-defsimplify by
math-simplify-expr.
(math-simplify-plus, math-simplify-times, math-simplify-divide)
(math-simplify-divisor, math-simplify-one-divisor)
(math-simplify-mod, math-simplify-ineq, math-simplify-sqrt)
(math-simplify-pow): Replaced variable expr by declared variable
math-simplify-expr.
(math-simplify-divisor): Removed local variables temp and op.
(math-simplify-one-divisor): Made temp and op local variables.
(math-simplify-divisor-nover, math-simplify-divisor-dover): New
variables.
(math-simplify-divisor, math-simplify-one-divisor): Use declared
variables.
(math-expr-subst-new, math-expr-subst-old): New variables.
(math-expr-subst, math-expr-subst-rec): Use declared variables.
(math-is-poly-degree, math-is-poly-loose): New variables.
(math-is-polynomial, math-is-poly-rec): Use declared variables.
(math-poly-base-const-ok, math-poly-base-pred): New variables.
(math-polynomial-base, math-polynomial-base-rec): Use declared
variables.
before their first use. Use `when', `unless'. Remove trailing
periods from error forms. Add description and headers suggested by
Emacs Lisp coding conventions.