X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?a=blobdiff_plain;f=ginac%2Fpolynomial%2Fcra_garner.cpp;h=647778e336a22ee1802a9e2ff4924bf1beee0b70;hb=80b1c3e0ee0e465d56e5c76bef4e52ef2dbc5197;hp=b400adbe69fca8d9c278e3f370197faf112aa2e6;hpb=546bababce8ef2b3c5ed3011cb7e49bd78016844;p=ginac.git diff --git a/ginac/polynomial/cra_garner.cpp b/ginac/polynomial/cra_garner.cpp index b400adbe..647778e3 100644 --- a/ginac/polynomial/cra_garner.cpp +++ b/ginac/polynomial/cra_garner.cpp @@ -2,7 +2,8 @@ #include #include #include -#include "cra_garner.hpp" +#include "cra_garner.h" +#include "compiler.h" namespace cln { @@ -73,6 +74,8 @@ mixed_radix_2_ordinary(const vector& mixed_radix_coeffs, cl_I integer_cra(const vector& residues, const vector& moduli) { + if (unlikely(moduli.size() < 2)) + throw std::invalid_argument("integer_cra: need at least 2 moduli"); vector recips(moduli.size() - 1); compute_recips(recips, moduli);