1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-04 21:12:23 -08:00
emacs/test/lisp
Mattias Engdegård 0e00f199cd Calc: fix binomial coefficients for negative arguments (bug#16999)
For some values outside integers 0≤k≤n, (n choose k) gave wrong
results, entered infinite recursion or used unreasonably amounts of
stack space.  This change fixes that and extends the function to all
integer arguments using the definitions from M. J. Kronenburg
(https://arxiv.org/abs/1105.3689).

* lisp/calc/calc-comb.el (calcFunc-choose):
Fix sign error to prevent infinite recursion and extend function to
handle all integer arguments.
(math-choose-iter, math-choose-float-iter): Rewrite in iterative form;
no TCO in elisp yet.
* test/lisp/calc/calc-tests.el (calc-tests--fac, calc-tests--choose)
(calc-tests--check-choose, calc-tests--explain-choose)
(calc-tests--calc-to-number): New helper functions.
(calc-choose): New test.
2020-09-14 11:19:22 +02:00
..
bookmark-resources Add ability to mark/unmark/delete all bookmarks 2020-08-09 15:13:05 -05:00
calc Calc: fix binomial coefficients for negative arguments (bug#16999) 2020-09-14 11:19:22 +02:00
calendar Apply icalendar.el patch by Thomas Plass <thunk2@arcor.de>. Fix bug#34315. 2020-09-02 19:58:56 +02:00
cedet Mark some tests as expensive 2020-09-10 20:25:19 +02:00
custom-resources Use lexical-binding in most remaining tests 2020-05-01 13:05:26 +02:00
emacs-lisp Adapt some tests for Emacs's excitingly variable quoting format 2020-09-12 11:57:42 -07:00
emulation Use lexical-binding in most remaining tests 2020-05-01 13:05:26 +02:00
erc Make the erc /ignore command prompt for a timeout 2020-08-05 10:27:40 +02:00
eshell Use lexical-binding in more tests 2020-08-29 22:41:51 +02:00
gnus Kill gpg-agents started by mml-sec-tests (bug#43358) 2020-09-13 16:05:25 +02:00
image Make gravatar-build-url respect dynamically bound variables again 2020-07-31 04:19:03 +02:00
international Fix return value for CCL opcode lookup-integer 2020-08-21 14:47:45 +02:00
mail Convert manual rmailmm tests to ert 2020-08-30 02:46:06 +02:00
net Fix a conversion failure in tramp-archive-tests (Bug#43353) 2020-09-13 13:25:52 +02:00
nxml Update copyright year to 2020 2020-01-01 00:59:52 +00:00
obsolete Update copyright year to 2020 2020-01-01 00:59:52 +00:00
org * test/lisp/org/org-tests.el: Use lexical-binding. 2020-09-10 19:32:53 +02:00
pcmpl-linux-resources Use lexical-binding in pcmpl-linux.el and add tests 2020-09-02 12:53:02 +02:00
play Use lexical-binding in life.el and add tests 2020-08-30 21:09:07 +02:00
progmodes Skip failing cperl test on hydra 2020-09-08 08:55:23 -07:00
saveplace-resources Use lexical-binding in saveplace.el and add tests 2020-08-08 01:40:38 +02:00
so-long-tests Update copyright year to 2020 2020-01-01 00:59:52 +00:00
term Update copyright year to 2020 2020-01-01 00:59:52 +00:00
textmodes Convert indent test for css-mode into automatic test 2020-09-10 20:40:34 +02:00
url Use lexical-binding in url-future-tests.el 2020-09-10 19:32:53 +02:00
vc Mark some diff tests as failing in nonascii directories 2020-09-12 19:47:29 -07:00
abbrev-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
apropos-tests.el Use lexical-binding in apropos.el and add tests 2020-04-18 18:43:23 +02:00
arc-mode-tests.el Combine archive-int-to-mode and tar-grind-file-mode 2020-05-14 18:43:15 +02:00
auth-source-pass-tests.el * test/lisp/auth-source-pass-tests.el: Test for multiple ports. 2020-01-22 07:37:01 +01:00
auth-source-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
autoinsert-tests.el Evaluate some unnecessarily quoted lambdas 2020-06-21 13:42:14 +01:00
autorevert-tests.el Mark some tests as expensive 2020-09-10 20:25:19 +02:00
battery-tests.el Improve battery.el UPower support 2020-06-18 13:11:17 +01:00
bookmark-tests.el Add ability to mark/unmark/delete all bookmarks 2020-08-09 15:13:05 -05:00
buff-menu-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
button-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
char-fold-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
color-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
comint-tests.el Use lexical-binding in most remaining tests 2020-05-01 13:05:26 +02:00
custom-tests.el Fix test failure in custom--test-theme-variables 2020-09-07 18:19:47 +02:00
dabbrev-tests.el Use lexical-binding in most remaining tests 2020-05-01 13:05:26 +02:00
delim-col-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
descr-text-tests.el Update tests for recent changes 2020-07-08 17:35:54 -07:00
dired-aux-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
dired-tests.el Move dired-jump from dired-x to dired (Bug#21981) 2020-09-12 03:42:37 +02:00
dired-x-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
dom-tests.el ; Fix last addition to dom-tests.el 2020-04-30 10:46:54 +01:00
electric-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
elide-head-tests.el Use lexical-binding in elide-head.el and add tests 2020-04-19 08:04:57 +02:00
epg-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
faces-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
ffap-tests.el Add support for ffap guessing at file names containing spaces 2020-08-15 12:11:41 +02:00
filenotify-tests.el Mark some tests as expensive 2020-09-10 20:25:19 +02:00
files-tests.el Do not truncate /foo//bar to /bar/ in parse-colon-path 2020-08-12 16:30:17 +02:00
files-x-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
font-lock-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
format-spec-tests.el Fix and extend format-spec (bug#41758) 2020-06-18 12:46:21 +01:00
help-fns-tests.el Only search for a variable when instructed 2020-08-11 15:26:24 +02:00
help-mode-tests.el Use lexical-binding in help-mode.el and add tests 2020-05-09 20:01:37 +02:00
help-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
hi-lock-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
htmlfontify-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ibuffer-tests.el Remove (or double) redundant backslashes in string literals 2020-01-24 23:04:34 +01:00
ido-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
image-file-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
image-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
imenu-tests.el Silence some warnings in tests 2020-06-21 12:50:34 +01:00
info-xref-tests.el Use lexical-binding in most remaining tests 2020-05-01 13:05:26 +02:00
isearch-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
jit-lock-tests.el Use lexical-binding in most remaining tests 2020-05-01 13:05:26 +02:00
json-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
jsonrpc-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
kmacro-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ls-lisp-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
makesum-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
man-tests.el Use lexical-binding in most remaining tests 2020-05-01 13:05:26 +02:00
md4-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
minibuffer-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
misc-tests.el Use lexical-binding in misc.el and add tests 2020-04-26 00:30:37 +02:00
mouse-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
mwheel-tests.el Use mouse-wheel-up-event in mwheel-tests.el 2020-09-08 18:31:15 +02:00
obarray-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
paren-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
password-cache-tests.el Don’t attempt to modify constant strings 2020-05-16 22:25:07 -07:00
pcmpl-linux-tests.el Use lexical-binding in pcmpl-linux.el and add tests 2020-09-02 12:53:02 +02:00
ps-print-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
register-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
replace-tests.el occur: Add bindings for next-error-no-select 2020-05-31 12:31:27 +02:00
rot13-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
saveplace-tests.el Use lexical-binding in saveplace.el and add tests 2020-08-08 01:40:38 +02:00
scroll-lock-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ses-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
shadowfile-tests.el Mark some tests as expensive 2020-09-10 20:25:19 +02:00
shell-tests.el Fix shell-tests failures 2020-01-20 15:52:27 +01:00
simple-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
sort-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
soundex-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
startup-tests.el Fix documentation related to 'command-switch-alist'. 2020-05-14 19:29:14 +02:00
subr-tests.el Adapt some tests for Emacs's excitingly variable quoting format 2020-09-12 11:57:42 -07:00
tabify-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
tar-mode-tests.el Combine archive-int-to-mode and tar-grind-file-mode 2020-05-14 18:43:15 +02:00
tempo-tests.el Allow tempo-define-template to reassign tags to new templates 2020-02-21 11:15:00 +02:00
term-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
thingatpt-tests.el Use lexical-binding in most remaining tests 2020-05-01 13:05:26 +02:00
thread-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
time-stamp-tests.el Merge from origin/emacs-27 2020-01-01 01:08:16 +00:00
timezone-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
version-tests.el Use lexical-binding in version.el and add tests 2020-04-28 23:35:52 +02:00
wdired-tests.el ; Fix license statements. 2020-08-27 02:53:25 +02:00
whitespace-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
wid-edit-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
xdg-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
xml-tests.el Reject invalid characters in XML strings (Bug#41094). 2020-05-23 14:01:17 +02:00
xt-mouse-tests.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00