X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fex.h;h=de0fbff6aa8a9da2c68a79f4dfa625569bcfde78;hp=f0e6db51f150b302393882064f7411222ff277cc;hb=0e22c5a63bb0f5792beba531d77944db18e3c191;hpb=67edef78ce992a8f6ad704bfac228b8dec6eacd2 diff --git a/ginac/ex.h b/ginac/ex.h index f0e6db51..de0fbff6 100644 --- a/ginac/ex.h +++ b/ginac/ex.h @@ -3,7 +3,7 @@ * Interface to GiNaC's light-weight expression handles. */ /* - * 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 @@ -32,6 +32,11 @@ #include namespace GiNaC { +#ifdef _MSC_VER + // MSVC produces a different symbol for _ex0 when it is declared inside + // ex::is_zero() than when it is declared at top level as follows + extern const ex _ex0; +#endif /** Helper class to initialize the library. There must be one static object * of this class in every object file that makes use of our flyweights in @@ -204,7 +209,12 @@ public: // comparison int compare(const ex & other) const; bool is_equal(const ex & other) const; - bool is_zero() const { extern const ex _ex0; return is_equal(_ex0); } + bool is_zero() const { +#ifndef _MSC_VER + extern const ex _ex0; +#endif + return is_equal(_ex0); + } bool is_zero_matrix() const; // symmetry