synced to 1.2 (bogus assertion and evaluated symmetry nodes)
authorChristian Bauer <Christian.Bauer@uni-mainz.de>
Tue, 3 Aug 2004 19:20:37 +0000 (19:20 +0000)
committerChristian Bauer <Christian.Bauer@uni-mainz.de>
Tue, 3 Aug 2004 19:20:37 +0000 (19:20 +0000)
ginac/basic.cpp
ginac/symmetry.cpp

index 725c0ec52b4345dbb0f47b61a5ef0cfa12c71865..3a2768418c5705aa0e7cb8078e88fc70834c7254 100644 (file)
@@ -57,7 +57,6 @@ GINAC_IMPLEMENT_REGISTERED_CLASS_OPT(basic, void,
  *  tinfo_key and the hash value. */
 basic::basic(const basic & other) : tinfo_key(other.tinfo_key), flags(other.flags & ~status_flags::dynallocated), hashvalue(other.hashvalue)
 {
-       GINAC_ASSERT(typeid(*this) == typeid(other));
 }
 
 /** basic assignment operator: the other object might be of a derived class. */
index 84f6e6cf058016734a4ce4c5c30301f97fc7725a..0cbf00cb0d9ba96a83aefc21c3c8523c4febc1ab 100644 (file)
@@ -55,25 +55,25 @@ GINAC_IMPLEMENT_REGISTERED_CLASS_OPT(symmetry, basic,
 // default constructor
 //////////
 
-symmetry::symmetry() : type(none)
+symmetry::symmetry() : inherited(TINFO_symmetry), type(none)
 {
-       tinfo_key = TINFO_symmetry;
+       setflag(status_flags::evaluated | status_flags::expanded);
 }
 
 //////////
 // other constructors
 //////////
 
-symmetry::symmetry(unsigned i) : type(none)
+symmetry::symmetry(unsigned i) : inherited(TINFO_symmetry), type(none)
 {
        indices.insert(i);
-       tinfo_key = TINFO_symmetry;
+       setflag(status_flags::evaluated | status_flags::expanded);
 }
 
-symmetry::symmetry(symmetry_type t, const symmetry &c1, const symmetry &c2) : type(t)
+symmetry::symmetry(symmetry_type t, const symmetry &c1, const symmetry &c2) : inherited(TINFO_symmetry), type(t)
 {
        add(c1); add(c2);
-       tinfo_key = TINFO_symmetry;
+       setflag(status_flags::evaluated | status_flags::expanded);
 }
 
 //////////