summaryrefslogtreecommitdiff
path: root/src/context
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2010-04-04 19:55:47 +0000
committerMorgan Deters <mdeters@gmail.com>2010-04-04 19:55:47 +0000
commit42c58baf0a2a96c1f3bd797d64834d02adfb9a59 (patch)
treea65529c9cd8399c8e78a4501eace01c150336942 /src/context
parent73be7b6b5a9c98cc5a32dcfb3050b9656bf10243 (diff)
* Node::isAtomic() now looks at an "atomic" attribute of arguments
instead of assuming it's atomic based on kind. Atomicity is determined at node building time. Fixes bug #81. If this is determined to make node building too slow, we can allocate another attribute "AtomicHasBeenComputed" to lazily compute atomicity. * TheoryImpl<> has gone away. Theory implementations now derive from Theory directly and share a single RegisteredAttr attribute for term registration (which shouldn't overlap: every term is "owned" by exactly one Theory). Fixes bug #79. * Additional atomicity tests in ExprBlack unit test. * More appropriate whitebox testing for attribute ID assignment (AttributeWhite unit test). * Better (and more correct) assertion checking in NodeBuilderBlack. * run-regression script now checks exit status against what's provided in "% EXIT: " gesture in .cvc input files, and stderr against "% EXPECT-ERROR: ". These can be used to support intended failures. Fixes bug #84. Also add "% EXIT: " gestures to all .cvc regressions in repository. * Solved some "control reaches end of non-void function" warnings in src/parser/bounded_token_buffer.cpp by replacing "AlwaysAssert(false)" with "Unreachable()" (which is known statically to never return normally). * Regression tests now use the cvc4 binary under builds/$(CURRENT_BUILD)/src/main instead of the one in bin/ which may not be properly installed yet at that point of the build. (Partially fixes bug #46.) * -fvisibility=hidden is now included by configure.ac instead of each Makefile.am, which will make it easier to support platforms (e.g. cygwin) that do things a different way. * TheoryUF code formatting. (re: my code review bug #64) * CDMap<> is leaking memory again, pending a fix for bug #85 in the context subsystem. (To avoid serious errors, can't free context objects.) * add ContextWhite unit test for bug #85 (though it's currently "defanged," awaiting the bugfix) * Minor documentation, other cleanup.
Diffstat (limited to 'src/context')
-rw-r--r--src/context/Makefile.am2
-rw-r--r--src/context/cdmap.h3
-rw-r--r--src/context/context.h6
3 files changed, 6 insertions, 5 deletions
diff --git a/src/context/Makefile.am b/src/context/Makefile.am
index 54accdd6e..85847e096 100644
--- a/src/context/Makefile.am
+++ b/src/context/Makefile.am
@@ -1,7 +1,7 @@
AM_CPPFLAGS = \
-D__BUILDING_CVC4LIB \
-I@srcdir@/../include -I@srcdir@/..
-AM_CXXFLAGS = -Wall -fvisibility=hidden
+AM_CXXFLAGS = -Wall $(FLAG_VISIBILITY_HIDDEN)
noinst_LTLIBRARIES = libcontext.la
diff --git a/src/context/cdmap.h b/src/context/cdmap.h
index e9ae8337e..d4de88daf 100644
--- a/src/context/cdmap.h
+++ b/src/context/cdmap.h
@@ -191,7 +191,8 @@ class CDMap : public ContextObj {
for(typename std::vector<Element*>::iterator i = d_trash.begin();
i != d_trash.end();
++i) {
- (*i)->deleteSelf();
+ Debug("gc") << "emptyTrash(): " << *i << std::endl;
+ //(*i)->deleteSelf();
}
d_trash.clear();
}
diff --git a/src/context/context.h b/src/context/context.h
index 455169a62..0e2a9107f 100644
--- a/src/context/context.h
+++ b/src/context/context.h
@@ -208,12 +208,12 @@ public:
/**
* Get the level of the current Scope
*/
- int getLevel(void) const { return d_level; }
+ int getLevel() const { return d_level; }
/**
* Return true iff this Scope is the current top Scope
*/
- bool isCurrent(void) const { return this == d_pContext->getTopScope(); }
+ bool isCurrent() const { return this == d_pContext->getTopScope(); }
/**
* When a ContextObj object is modified for the first time in this Scope, it
@@ -240,7 +240,7 @@ public:
static void operator delete(void* pMem) {}
//FIXME: //! Check for memory leaks
- // void check(void);
+ // void check();
};/* class Scope */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback