]> www.ginac.de Git - ginac.git/blobdiff - ginac/utils.h
Synced to HEAD
[ginac.git] / ginac / utils.h
index 651ac342e1fdc7a68c3187d8861b60b7e3a8e2b7..117e84ca7e294a265192765597d288a998c26ee7 100644 (file)
@@ -38,10 +38,12 @@ namespace GiNaC {
 class dunno {};
 
 // some compilers (e.g. cygwin) define a macro log2, causing confusion
-#ifndef log2
-unsigned log2(unsigned n);
+#ifdef log2
+#undef log2
 #endif
 
+unsigned log2(unsigned n);
+
 /** Compare two pointers (just to establish some sort of canonical order).
  *  @return -1, 0, or 1 */
 template <class T>
@@ -438,7 +440,7 @@ extern const ex _ex120;
 // Helper macros for class implementations (mostly useful for trivial classes)
 
 #define DEFAULT_CTOR(classname) \
-classname::classname() : inherited(TINFO_##classname) {}
+classname::classname() : inherited(TINFO_##classname) { setflag(status_flags::evaluated | status_flags::expanded); }
 
 #define DEFAULT_UNARCHIVE(classname) \
 ex classname::unarchive(const archive_node &n, lst &sym_lst) \