]> www.ginac.de Git - ginac.git/blobdiff - ginac/inifcns.cpp
trancendental function branch-point sanity
[ginac.git] / ginac / inifcns.cpp
index 6541af420574cc4cf8b1dd30c87b5c2878911121..d5c90e1d59c7c0382bec755be540f38c8c305224 100644 (file)
@@ -3,7 +3,7 @@
  *  Implementation of GiNaC's initially known functions. */
 
 /*
- *  GiNaC Copyright (C) 1999-2000 Johannes Gutenberg University Mainz, Germany
+ *  GiNaC Copyright (C) 1999-2001 Johannes Gutenberg University Mainz, Germany
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
@@ -114,7 +114,8 @@ static ex csgn_series(const ex & arg,
 {
        const ex arg_pt = arg.subs(rel);
        if (arg_pt.info(info_flags::numeric)
-        && ex_to_numeric(arg_pt).real().is_zero())
+           && ex_to_numeric(arg_pt).real().is_zero()
+           && !(options & series_options::suppress_branchcut))
                throw (std::domain_error("csgn_series(): on imaginary axis"));
        
        epvector seq;
@@ -489,7 +490,7 @@ ex lsolve(const ex &eqns, const ex &symbols)
        matrix solution;
        try {
                solution = sys.solve(vars,rhs);
-       } catch (const runtime_error & e) {
+       } catch (const std::runtime_error & e) {
                // Probably singular matrix or otherwise overdetermined system:
                // It is consistent to return an empty list
                return lst();