From bbd3c2d6d0d1cbe0d29e3f9e28130f90fe4d03cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Kochma=C5=84ski?= Date: Mon, 30 Dec 2019 22:00:14 +0100 Subject: [PATCH] expt: add a case for complex-float ^ integer. Lack of this switch branch lead to unrecoverable error. Fixes #547. --- src/c/numbers/expt.d | 6 ++++++ src/tests/normal-tests/complex.lsp | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/c/numbers/expt.d b/src/c/numbers/expt.d index e18d86e5c..d35817df5 100644 --- a/src/c/numbers/expt.d +++ b/src/c/numbers/expt.d @@ -202,6 +202,12 @@ ecl_expt(cl_object x, cl_object y) case t_doublefloat: case t_singlefloat: return ecl_expt_float(x, y); +#ifdef ECL_COMPLEX_FLOAT + case t_clfloat: + case t_cdfloat: + case t_csfloat: + return ecl_expt_complex_float(x, y); +#endif default: ecl_internal_error("expt: unhandled switch branch."); } diff --git a/src/tests/normal-tests/complex.lsp b/src/tests/normal-tests/complex.lsp index d5519178d..fe716cd5f 100644 --- a/src/tests/normal-tests/complex.lsp +++ b/src/tests/normal-tests/complex.lsp @@ -298,5 +298,5 @@ ;; ;; (EXPT #C(1.0 0.0) 2) causes unrecoverable error. ;; - (test.csfloat.0010.issue-547 + (test csfloat.0010.issue-547 (finishes (expt #c(1.0 0.0) 2))))