(%i1) hypergeometric([0.5,0.5],[2],2);
Unrecoverable error: invocation history stack overflow.
Aborted (core dumped)
Maxima version: 5.24.0
Maxima build date: 9:11 2/29/2012
Host type: x86_64-unknown-linux-gnu
Lisp implementation type: GNU Common Lisp (GCL)
Lisp implementation version: GCL 2.6.7
Also observed in current version from Git (post-5.31) with GCL 2.6.9.
Not observed in current version with Clisp, SBCL, or Clozure CL. In each case,
hypergeometric([0.5,0.5],[2],2)
just comes back the same.For some half-integer parameters, analytic continuation of the Gauss hypergeometric function requires transformations that the hypergeometric code doesn't know (I think the needed transformations include those given in http://dlmf.nist.gov/15.8).
Sorry about this bug--I'll try to fix it.
Looks like the problem is in floating point evaluation of hypergeometric (not specific to GCL; the stack overflow is just a side effect). Looks like the various functions for floating point evaluation end up calling each other recursively without any stopping point; looks like the loop over fpprec in HYPERGEOMETRIC-FLOAT-EVAL is in the middle of it.
Here's what I see (with Clozure CL). Note that I've changed max_fpprec to 20 so that it doesn't run so long before giving up.
Maxima 5.46.0 + SBCL 2.1.0 on macOS gives:
Tracing as shown in previous comment shows same looping behavior.