From: Christian Bauer Date: Thu, 8 Jan 2004 20:01:43 +0000 (+0000) Subject: fixed is_exactly_a X-Git-Tag: release_1-2-0~19 X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=commitdiff_plain;h=eddd1f843746065177daf1965a1ccd1a3d82a3fe fixed is_exactly_a --- diff --git a/ginac/symbol.h b/ginac/symbol.h index 69233002..51164a97 100644 --- a/ginac/symbol.h +++ b/ginac/symbol.h @@ -85,6 +85,7 @@ public: void unassign(); void set_name(const std::string & n) { name = n; } std::string get_name() const { return name; } + unsigned get_domain() const { return domain; } protected: void do_print(const print_context & c, unsigned level) const; void do_print_latex(const print_latex & c, unsigned level) const; @@ -127,13 +128,13 @@ public: /** Specialization of is_exactly_a(obj) for symbol objects. */ template<> inline bool is_exactly_a(const basic & obj) { - return (obj.tinfo() == TINFO_symbol) && obj.info(info_flags::real); + return obj.tinfo() == TINFO_symbol; } /** Specialization of is_exactly_a(obj) for realsymbol objects. */ template<> inline bool is_exactly_a(const basic & obj) { - return (obj.tinfo() == TINFO_symbol) && obj.info(info_flags::real); + return (obj.tinfo() == TINFO_symbol) && (static_cast(obj).get_domain() == domain::real); } // wrapper functions around member functions