Index: src/tests/function-operator.c
===================================================================
--- src/tests/function-operator.c	(revision f79cdf85bad8585a57812937e5080c5ecb822a10)
+++ src/tests/function-operator.c	(revision b3763cab70f90086a690c73c59ebc85aa8022a12)
@@ -10,6 +10,6 @@
 // Created On       : Fri Aug 25 15:21:11 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Dec  7 12:42:26 2017
-// Update Count     : 6
+// Last Modified On : Thu Aug  2 09:27:53 2018
+// Update Count     : 8
 //
 
@@ -92,5 +92,5 @@
 void ?{}(ostream_iterator & iter, ofstream * out) {
 	iter.out = new(out);
-		}
+}
 // no destructor, memory leak. This is necessary for this to work at the moment, since
 // *? requires its parameter by value and returns a reference.
@@ -168,4 +168,7 @@
 	transform(begin(x), end(x), begin(x), &times2);
 	copy(begin(x), end(x), out_iter);
+
+	// REMOVE WHEN ?* PROBLEM FIXED.
+	delete(out_iter.out);
 }
 
Index: src/tests/sum.c
===================================================================
--- src/tests/sum.c	(revision f79cdf85bad8585a57812937e5080c5ecb822a10)
+++ src/tests/sum.c	(revision b3763cab70f90086a690c73c59ebc85aa8022a12)
@@ -11,6 +11,6 @@
 // Created On       : Wed May 27 17:56:53 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Jun  3 19:23:41 2018
-// Update Count     : 278
+// Last Modified On : Thu Aug  2 08:03:09 2018
+// Update Count     : 279
 //
 
@@ -115,4 +115,5 @@
 	sout | "sum from" | low | "to" | High | "is"
 		 | sum( size, gs.x ) | ", check" | (int)s | endl; // add field array in generic type
+	delete( gs.x );
 } // main
 
Index: src/tests/tuple/tupleVariadic.c
===================================================================
--- src/tests/tuple/tupleVariadic.c	(revision f79cdf85bad8585a57812937e5080c5ecb822a10)
+++ src/tests/tuple/tupleVariadic.c	(revision b3763cab70f90086a690c73c59ebc85aa8022a12)
@@ -9,8 +9,10 @@
 // Author           : Rob Schluntz
 // Created On       : Fri Dec 16 10:25:35 2016
-// Last Modified By : Rob Schluntz
-// Last Modified On : Fri Dec 21 14:42:48 2016
-// Update Count     : 2
+// Last Modified By : Peter A. Buhr
+// Last Modified On : Thu Aug  2 09:24:04 2018
+// Update Count     : 6
 //
+
+#include <stdlib>
 
 void func(void) {
@@ -28,7 +30,4 @@
 	printf("called process(double) %g\n", x);
 }
-
-forall( dtype T, ttype Params | sized(T) | { void ?{}(T &, Params); } )
-T * new(Params p);
 
 struct array {
@@ -66,4 +65,8 @@
 	a.data[2] = a2;
 	printf("called ?{} with a: %d %d %d\n", a0, a1, a2);
+}
+
+void ^?{}(array & a) {
+	free(a.data);
 }
 
@@ -126,4 +129,11 @@
 		bar(x);
 	}
+
+	delete(ptr);
+	delete(x4);
+	delete(x3);
+	delete(x2);
+	delete(x1);
+	delete(x0);
 }
 
@@ -131,3 +141,2 @@
 // tab-width: 4 //
 // End: //
-
