Index: tests/errors/.expect/completeType.txt
===================================================================
--- tests/errors/.expect/completeType.txt	(revision 23ecea4b78bd072667005ab5346894709e66b7ef)
+++ tests/errors/.expect/completeType.txt	(revision e276be6a8916de2345a6b39ef103c6499a9f7f6e)
@@ -27,5 +27,5 @@
     void 
   )
-  Environment:( _85_4_DT ) -> instance of struct A with body 0 (no widening)
+  Environment:( _85_2_DT ) -> instance of struct A with body 0 (no widening)
 
 
@@ -50,5 +50,5 @@
     void 
   )
-  Environment:( _85_4_DT ) -> instance of struct B with body 1 (no widening)
+  Environment:( _85_2_DT ) -> instance of struct B with body 1 (no widening)
 
 
Index: tests/exceptions/.expect/interact.txt
===================================================================
--- tests/exceptions/.expect/interact.txt	(revision 23ecea4b78bd072667005ab5346894709e66b7ef)
+++ tests/exceptions/.expect/interact.txt	(revision e276be6a8916de2345a6b39ef103c6499a9f7f6e)
@@ -14,2 +14,8 @@
 resumption catch, will terminate
 inner termination catch
+
+throwing resume moon
+resumption moon catch, will terminate
+termination catch
+throwing resume star
+resumption star catch
Index: tests/exceptions/.expect/resume.txt
===================================================================
--- tests/exceptions/.expect/resume.txt	(revision 23ecea4b78bd072667005ab5346894709e66b7ef)
+++ tests/exceptions/.expect/resume.txt	(revision e276be6a8916de2345a6b39ef103c6499a9f7f6e)
@@ -25,2 +25,6 @@
 caught second exception
 recaught first exception
+
+inner catch
+inner catch
+outer catch
Index: tests/exceptions/.expect/terminate.txt
===================================================================
--- tests/exceptions/.expect/terminate.txt	(revision 23ecea4b78bd072667005ab5346894709e66b7ef)
+++ tests/exceptions/.expect/terminate.txt	(revision e276be6a8916de2345a6b39ef103c6499a9f7f6e)
@@ -24,2 +24,5 @@
 caught second exception
 recaught first exception
+
+inner catch
+outer catch
Index: tests/exceptions/interact.cfa
===================================================================
--- tests/exceptions/interact.cfa	(revision 23ecea4b78bd072667005ab5346894709e66b7ef)
+++ tests/exceptions/interact.cfa	(revision e276be6a8916de2345a6b39ef103c6499a9f7f6e)
@@ -86,5 +86,4 @@
 		printf("outer terminate catch (error)\n");
 	}
-#if 0
 	printf("\n");
 
@@ -111,4 +110,3 @@
 		printf("outermost catch (error)\n");
 	}
-#endif
 }
Index: tests/exceptions/resume.cfa
===================================================================
--- tests/exceptions/resume.cfa	(revision 23ecea4b78bd072667005ab5346894709e66b7ef)
+++ tests/exceptions/resume.cfa	(revision e276be6a8916de2345a6b39ef103c6499a9f7f6e)
@@ -99,3 +99,17 @@
 		printf("caught second exception (bad location)\n");
 	}
+	printf("\n");
+
+	// Check successive operations.
+	try {
+		try {
+			THROW_RESUME(&(zen){});
+			THROW_RESUME(&(zen){});
+		} catchResume (zen *) {
+			printf("inner catch\n");
+		}
+		THROW_RESUME(&(zen){});
+	} catchResume (zen *) {
+		printf("outer catch\n");
+	}
 }
Index: tests/exceptions/terminate.cfa
===================================================================
--- tests/exceptions/terminate.cfa	(revision 23ecea4b78bd072667005ab5346894709e66b7ef)
+++ tests/exceptions/terminate.cfa	(revision e276be6a8916de2345a6b39ef103c6499a9f7f6e)
@@ -99,3 +99,17 @@
 		printf("caught second exception (bad location)\n");
 	}
+	printf("\n");
+
+	// Check successive operations.
+	try {
+		try {
+			THROW(&(zen){});
+			THROW(&(zen){});
+		} catch (zen *) {
+			printf("inner catch\n");
+		}
+		THROW(&(zen){});
+	} catch (zen *) {
+		printf("outer catch\n");
+	}
 }
