* Interface to GiNaC's light-weight expression handles. */
/*
- * GiNaC Copyright (C) 1999-2009 Johannes Gutenberg University Mainz, Germany
+ * GiNaC Copyright (C) 1999-2011 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
#include <stack>
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
// 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