]> www.ginac.de Git - ginac.git/blobdiff - ginac/basic.cpp
Happy New Year!
[ginac.git] / ginac / basic.cpp
index 1a3438e753c7627f03cfc902107d90c67a32a21a..1d5f695a5e25873191f4ddb490849dabc4f5228d 100644 (file)
@@ -3,7 +3,7 @@
  *  Implementation of GiNaC's ABC. */
 
 /*
- *  GiNaC Copyright (C) 1999-2016 Johannes Gutenberg University Mainz, Germany
+ *  GiNaC Copyright (C) 1999-2019 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
@@ -585,10 +585,11 @@ bool basic::match(const ex & pattern, exmap& repl_lst) const
 ex basic::subs_one_level(const exmap & m, unsigned options) const
 {
        if (options & subs_options::no_pattern) {
-               auto it = m.find(*this);
+               ex thisex = *this;  // NB: *this may be deleted here.
+               auto it = m.find(thisex);
                if (it != m.end())
                        return it->second;
-               return *this;
+               return thisex;
        } else {
                for (auto & it : m) {
                        exmap repl_lst;