X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fexcompiler.cpp;h=d7897c014e92827374ebcc70d0ff11f86dc01e45;hp=375776d8e1428595f1ce4a8d42c9ac9f8f8d6e7e;hb=c532971f9e99886781437912ae1655719284ac2f;hpb=95ede03f00106be5fb087d76c86ca5c27edb9122 diff --git a/ginac/excompiler.cpp b/ginac/excompiler.cpp index 375776d8..d7897c01 100644 --- a/ginac/excompiler.cpp +++ b/ginac/excompiler.cpp @@ -6,7 +6,7 @@ */ /* - * GiNaC Copyright (C) 1999-2010 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2015 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 @@ -72,7 +72,7 @@ class excompiler std::vector filelist; /**< List of all opened modules */ public: /** - * Complete clean-up of opend modules is done on destruction. + * Complete clean-up of opened modules is done on destruction. */ ~excompiler() { @@ -113,12 +113,12 @@ public: char* new_filename = new char[strlen(filename_pattern)+1]; strcpy(new_filename, filename_pattern); if (!mktemp(new_filename)) { - delete new_filename; + delete[] new_filename; throw std::runtime_error("mktemp failed"); } filename = std::string(new_filename); ofs.open(new_filename, std::ios::out); - delete new_filename; + delete[] new_filename; } else { // use parameter as filename ofs.open(filename.c_str(), std::ios::out); @@ -172,7 +172,7 @@ public: for (std::vector::iterator it = filelist.begin(); it != filelist.end();) { if (it->name == filename) { clean_up(it); - filelist.erase(it); + it = filelist.erase(it); } else { ++it; } @@ -181,7 +181,7 @@ public: }; /** - * This static object manages the modules opened by the complile_ex and link_ex + * This static object manages the modules opened by the compile_ex and link_ex * functions. On program termination its dtor is called and all open modules * are closed. The associated source and so-files are eventually deleted then * as well.