Index: tests/.expect/array.txt
===================================================================
--- tests/.expect/array.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/array.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+array.cfa: In function '_X4mainFi___1':
+array.cfa:54:9: note: #pragma message: Compiled
+   54 | 
+      |         ^      
Index: tests/.expect/cast.txt
===================================================================
--- tests/.expect/cast.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/cast.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,2 @@
+cast.cfa: In function '_X4mainFi_iPPKc__1':
+cast.cfa:18:9: note: #pragma message: Compiled
Index: tests/.expect/enum.txt
===================================================================
--- tests/.expect/enum.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/enum.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/.expect/expression.txt
===================================================================
--- tests/.expect/expression.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/expression.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,2 @@
+expression.cfa: In function '_X4mainFi___1':
+expression.cfa:88:9: note: #pragma message: Compiled
Index: tests/.expect/forall.txt
===================================================================
--- tests/.expect/forall.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/forall.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+forall.cfa: In function '_X4mainFi___1':
+forall.cfa:218:9: note: #pragma message: Compiled
+  218 | 
+      |         ^      
Index: tests/.expect/heap.txt
===================================================================
--- tests/.expect/heap.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/heap.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/.expect/identFuncDeclarator.txt
===================================================================
--- tests/.expect/identFuncDeclarator.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/identFuncDeclarator.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+identFuncDeclarator.cfa: In function '_X4mainFi___1':
+identFuncDeclarator.cfa:116:9: note: #pragma message: Compiled
+  116 | 
+      |         ^      
Index: tests/.expect/identParamDeclarator.txt
===================================================================
--- tests/.expect/identParamDeclarator.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/identParamDeclarator.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/.expect/labelledExit.txt
===================================================================
--- tests/.expect/labelledExit.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/labelledExit.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+labelledExit.cfa: In function '_X4mainFi_iPPKc__1':
+labelledExit.cfa:183:9: note: #pragma message: Compiled
+  183 | 
+      |         ^      
Index: tests/.expect/limits.txt
===================================================================
--- tests/.expect/limits.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/limits.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+limits.cfa: In function '_X4mainFi_iPPKc__1':
+limits.cfa:151:9: note: #pragma message: Compiled
+  151 | 
+      |         ^      
Index: tests/.expect/maybe.txt
===================================================================
--- tests/.expect/maybe.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/maybe.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/.expect/nested-types.txt
===================================================================
--- tests/.expect/nested-types.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/nested-types.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+nested-types.cfa: In function '_X4mainFi___1':
+nested-types.cfa:102:9: note: #pragma message: Compiled
+  102 | 
+      |         ^      
Index: tests/.expect/numericConstants.txt
===================================================================
--- tests/.expect/numericConstants.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/numericConstants.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+numericConstants.cfa: In function '_X4mainFi___1':
+numericConstants.cfa:68:9: note: #pragma message: Compiled
+   68 | 
+      |         ^      
Index: tests/.expect/operators.txt
===================================================================
--- tests/.expect/operators.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/operators.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/.expect/result.txt
===================================================================
--- tests/.expect/result.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/result.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/.expect/stdincludes.txt
===================================================================
--- tests/.expect/stdincludes.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/stdincludes.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+stdincludes.cfa: In function '_X4mainFi___1':
+stdincludes.cfa:52:9: note: #pragma message: Compiled
+   52 | 
+      |         ^      
Index: tests/.expect/switch.txt
===================================================================
--- tests/.expect/switch.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/switch.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+switch.cfa: In function '_X4mainFi___1':
+switch.cfa:105:9: note: #pragma message: Compiled
+  105 | 
+      |         ^      
Index: tests/.expect/typedefRedef-ERR1.txt
===================================================================
--- tests/.expect/typedefRedef-ERR1.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/typedefRedef-ERR1.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -1,2 +1,2 @@
 typedefRedef.cfa:4:1 error: Cannot redefine typedef: Foo
-typedefRedef.cfa:60:1 error: Cannot redefine typedef: ARR
+typedefRedef.cfa:59:1 error: Cannot redefine typedef: ARR
Index: tests/.expect/typedefRedef.txt
===================================================================
--- tests/.expect/typedefRedef.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/typedefRedef.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,2 @@
+typedefRedef.cfa: In function '_X4mainFi___1':
+typedefRedef.cfa:71:9: note: #pragma message: Compiled
Index: tests/.expect/typeof.txt
===================================================================
--- tests/.expect/typeof.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/typeof.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/.expect/variableDeclarator.txt
===================================================================
--- tests/.expect/variableDeclarator.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/variableDeclarator.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,4 @@
+variableDeclarator.cfa: In function '_X4mainFi_iPPKc__1':
+variableDeclarator.cfa:182:9: note: #pragma message: Compiled
+  182 | 
+      |         ^      
Index: tests/.expect/voidPtr.txt
===================================================================
--- tests/.expect/voidPtr.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/.expect/voidPtr.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/Makefile.am
===================================================================
--- tests/Makefile.am	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/Makefile.am	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -11,6 +11,6 @@
 ## Created On       : Sun May 31 09:08:15 2015
 ## Last Modified By : Peter A. Buhr
-## Last Modified On : Tue Nov 20 11:18:51 2018
-## Update Count     : 68
+## Last Modified On : Sun Sep 27 19:01:41 2020
+## Update Count     : 84
 ###############################################################################
 
@@ -133,15 +133,11 @@
 	$(CFACOMPILETEST) -CFA -XCFA -p -c -fsyntax-only -o $(abspath ${@})
 
-# Use for tests where the make command is expected to succeed but the expected.txt should be compared to stderr
-EXPECT_STDERR = builtins/sync warnings/self-assignment
-$(EXPECT_STDERR): % : %.cfa $(CFACCBIN)
-	$(CFACOMPILETEST) -c -fsyntax-only 2> $(abspath ${@})
-
 #------------------------------------------------------------------------------
 # CUSTOM TARGET
 #------------------------------------------------------------------------------
-# tests that just validate syntax
-expression : expression.cfa $(CFACCBIN)
-	$(CFACOMPILETEST) -c -fsyntax-only 2> $(abspath ${@})
+# tests that just validate syntax and compiler output should be compared to stderr
+SYNTAX_ONLY_CODE = expression typedefRedef variableDeclarator switch numericConstants identFuncDeclarator forall limits nested-types stdincludes cast labelledExit array builtins/sync warnings/self-assignment
+$(SYNTAX_ONLY_CODE): % : %.cfa $(CFACCBIN)
+	$(CFACOMPILETEST) -Wno-unused-variable -Wno-unused-label -c -fsyntax-only 2> $(abspath ${@})
 
 # expected failures
Index: tests/array.cfa
===================================================================
--- tests/array.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/array.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -11,13 +11,13 @@
 // Created On       : Tue Feb 19 21:18:06 2019
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Feb 19 21:18:46 2019
-// Update Count     : 1
+// Last Modified On : Sun Sep 27 09:05:40 2020
+// Update Count     : 4
 // 
 
-int a1[];
+int a1[0];
 //int a2[*];
 //double a4[3.0];
 
-int m1[][3];
+int m1[0][3];
 //int m2[*][*];
 int m4[3][3];
@@ -49,5 +49,7 @@
 }
 
-int main() {}
+int main() {
+	#pragma message( "Compiled" )						// force non-empty .expect file
+}
 
 // Local Variables: //
Index: tests/builtins/sync.cfa
===================================================================
--- tests/builtins/sync.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/builtins/sync.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -355,4 +355,4 @@
 
 int main() {
-	return 0;
+	#pragma message( "Compiled" )			// force non-empty .expect file
 }
Index: tests/cast.cfa
===================================================================
--- tests/cast.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/cast.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -13,6 +13,5 @@
 
 //Dummy main
-int main(int argc, char const *argv[])
-{
-	return 0;
+int main( int argc, char const * argv[] ) {
+	#pragma message( "Compiled" )			// force non-empty .expect file
 }
Index: tests/concurrent/.expect/cluster.txt
===================================================================
--- tests/concurrent/.expect/cluster.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/.expect/cluster.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/concurrent/cluster.cfa
===================================================================
--- tests/concurrent/cluster.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/cluster.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -32,4 +32,4 @@
 		}
 	}
-	return 0;
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/concurrent/examples/.expect/datingService.txt
===================================================================
--- tests/concurrent/examples/.expect/datingService.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/examples/.expect/datingService.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/concurrent/examples/datingService.cfa
===================================================================
--- tests/concurrent/examples/datingService.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/examples/datingService.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Mon Oct 30 12:56:20 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Fri Jun 21 11:32:34 2019
-// Update Count     : 38
+// Last Modified On : Sun Sep 27 15:42:25 2020
+// Update Count     : 40
 //
 
@@ -108,4 +108,6 @@
 		if ( girlck[ boyck[i] ] != boyck[ girlck[i] ] ) abort();
 	} // for
+
+	printf( "done\n" );									// non-empty .expect file
 } // main
 
Index: tests/concurrent/futures/.expect/basic.txt
===================================================================
--- tests/concurrent/futures/.expect/basic.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/futures/.expect/basic.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/concurrent/futures/basic.cfa
===================================================================
--- tests/concurrent/futures/basic.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/futures/basic.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -91,3 +91,5 @@
 		}
 	}
+	printf( "done\n" );				// non-empty .expect file
+
 }
Index: tests/concurrent/park/.expect/force_preempt.txt
===================================================================
--- tests/concurrent/park/.expect/force_preempt.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/park/.expect/force_preempt.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/concurrent/park/.expect/start_parked.txt
===================================================================
--- tests/concurrent/park/.expect/start_parked.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/park/.expect/start_parked.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/concurrent/park/force_preempt.cfa
===================================================================
--- tests/concurrent/park/force_preempt.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/park/force_preempt.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -57,3 +57,4 @@
 		Waiter waiters[5];
 	}
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/concurrent/park/start_parked.cfa
===================================================================
--- tests/concurrent/park/start_parked.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/concurrent/park/start_parked.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -3,11 +3,12 @@
 thread Parker {};
 void main( Parker & ) {
-      park( __cfaabi_dbg_ctx );
+	park( __cfaabi_dbg_ctx );
 }
 
 int main() {
-      for(1000) {
-            Parker parker;
-            unpark( parker __cfaabi_dbg_ctx2 );
-      }
+	for(1000) {
+		Parker parker;
+		unpark( parker __cfaabi_dbg_ctx2 );
+	}
+	printf( "done\n" );									// non-empty .expect file
 }
Index: tests/enum.cfa
===================================================================
--- tests/enum.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/enum.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -26,3 +26,4 @@
 //Dummy main
 int main(int argc, char const *argv[]) {
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/exceptions/.expect/virtual-cast.txt
===================================================================
--- tests/exceptions/.expect/virtual-cast.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/exceptions/.expect/virtual-cast.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/exceptions/.expect/virtual-poly.txt
===================================================================
--- tests/exceptions/.expect/virtual-poly.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/exceptions/.expect/virtual-poly.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/exceptions/virtual-cast.cfa
===================================================================
--- tests/exceptions/virtual-cast.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/exceptions/virtual-cast.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -74,3 +74,4 @@
 	free(tri);
 	free(top);
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/exceptions/virtual-poly.cfa
===================================================================
--- tests/exceptions/virtual-poly.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/exceptions/virtual-poly.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -77,3 +77,4 @@
 	mono_poly_test();
 	poly_poly_test();
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/expression.cfa
===================================================================
--- tests/expression.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/expression.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -8,78 +8,80 @@
 
 int main() {
-    int a[3] = { 0, 0, 0 };
-    S s = { 3 }, * ps = &s;
-    [int] t = { 3 };
-    * [int] pt = &t;
-    int i = 1, j = 2;
+	int a[3] = { 0, 0, 0 };
+	S s = { 3 }, * ps = &s;
+	[int] t = { 3 };
+	* [int] pt = &t;
+	int i = 1, j = 2;
 
-    // operators
+	// operators
 
-    !i;
-    ~i;
-    +i;
-    -i;
-    *ps;
-    ++ps;
-    --ps;
-    ps++;
-    ps--;
+	!i;
+	~i;
+	+i;
+	-i;
+	*ps;
+	++ps;
+	--ps;
+	ps++;
+	ps--;
 
-    i + j;
-    i - j;
-    i * j;
+	i + j;
+	i - j;
+	i * j;
 
-    i / j;
-    i % j;
-    i ^ j;
-    i & j;
-    i | j;
-    i < j;
-    i > j;
-    i = j;
+	i / j;
+	i % j;
+	i ^ j;
+	i & j;
+	i | j;
+	i < j;
+	i > j;
+	i = j;
 
-    i == j;
-    i != j;
-    i << j;
-    i >> j;
-    i <= j;
-    i >= j;
-    i && j;
-    i || j;
-    ps->i;
+	i == j;
+	i != j;
+	i << j;
+	i >> j;
+	i <= j;
+	i >= j;
+	i && j;
+	i || j;
+	ps->i;
 
-    i *= j;
-    i /= j;
-    i %= j;
-    i += j;
-    i -= j;
-    i &= j;
-    i |= j;
-    i ^= j;
-    i <<= j;
-    i >>= j;
+	i *= j;
+	i /= j;
+	i %= j;
+	i += j;
+	i -= j;
+	i &= j;
+	i |= j;
+	i ^= j;
+	i <<= j;
+	i >>= j;
 
-    i ? i : j;
+	i ? i : j;
 
-    // postfix function call
+	// postfix function call
 
-    (3 + 4)`mary;
-    ({3 + 4;})`mary;
-    [3, 4]`mary;
-    3`mary;
-    a[0]`mary;
-    a[0]`mary`mary;
-    s{0}`mary;
-    a[3]`jane++;
-    jack(3)`mary;
-    s.i`mary;
-    t.0`mary;
-    s.[i]`mary;
-    ps->i`mary;
-    pt->0`mary;
-    ps->[i]`mary;
-    i++`mary;
-    i--`mary;
-    (S){2}`mary;
-    (S)@{2}`mary;
+	(3 + 4)`mary;
+	({3 + 4;})`mary;
+	[3, 4]`mary;
+	3`mary;
+	a[0]`mary;
+	a[0]`mary`mary;
+	s{0}`mary;
+	a[3]`jane++;
+	jack(3)`mary;
+	s.i`mary;
+	t.0`mary;
+	s.[i]`mary;
+	ps->i`mary;
+	pt->0`mary;
+	ps->[i]`mary;
+	i++`mary;
+	i--`mary;
+	(S){2}`mary;
+	(S)@{2}`mary;
+
+	#pragma message( "Compiled" )			// force non-empty .expect file
 } // main
Index: tests/forall.cfa
===================================================================
--- tests/forall.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/forall.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Wed May  9 08:48:15 2018
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Mar 19 08:29:38 2019
-// Update Count     : 32
+// Last Modified On : Sun Sep 27 08:43:20 2020
+// Update Count     : 35
 // 
 
@@ -158,5 +158,5 @@
 }
 forall( otype T ) inline static {
-	int RT9( T ) { T t; }
+	int RT9( T ) { T t; return 3; }
 }
 
@@ -213,5 +213,7 @@
 // w3 g3;
 
-int main( void ) {}
+int main( void ) {
+	#pragma message( "Compiled" )			// force non-empty .expect file
+}
 
 // Local Variables: //
Index: tests/heap.cfa
===================================================================
--- tests/heap.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/heap.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Tue Nov  6 17:54:56 2018
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Mon Sep  7 18:37:41 2020
-// Update Count     : 72
+// Last Modified On : Fri Sep 25 15:21:52 2020
+// Update Count     : 73
 // 
 
@@ -485,4 +485,5 @@
 	// checkFreeOn();
 	// malloc_stats();
+	printf( "done\n" );									// non-empty .expect file
 }
 
Index: tests/identFuncDeclarator.cfa
===================================================================
--- tests/identFuncDeclarator.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/identFuncDeclarator.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Wed Aug 17 08:36:34 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Nov  6 17:56:33 2018
-// Update Count     : 3
+// Last Modified On : Sun Sep 27 08:20:46 2020
+// Update Count     : 5
 // 
 
@@ -111,4 +111,6 @@
 	int (* (* const f80)(int))();
 	int (* const(* const f81)(int))();
+
+	#pragma message( "Compiled" )			// force non-empty .expect file
 }
 
Index: tests/identParamDeclarator.cfa
===================================================================
--- tests/identParamDeclarator.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/identParamDeclarator.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Wed Aug 17 08:37:56 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Nov  6 17:56:44 2018
-// Update Count     : 3
+// Last Modified On : Fri Sep 25 14:31:08 2020
+// Update Count     : 4
 // 
 
@@ -158,5 +158,5 @@
 
 int main( int argc, char const *argv[] ) {				// dummy main
-	return 0;
+	printf( "done\n" );									// non-empty .expect file
 }
 
Index: tests/labelledExit.cfa
===================================================================
--- tests/labelledExit.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/labelledExit.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Wed Aug 10 07:29:39 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Wed Feb  5 16:49:48 2020
-// Update Count     : 9
+// Last Modified On : Sun Sep 27 09:01:34 2020
+// Update Count     : 12
 // 
 
@@ -179,5 +179,5 @@
 
 int main( int argc, char const *argv[] ) {
-	/* code */
+	#pragma message( "Compiled" )						// force non-empty .expect file
 }
 
Index: tests/limits.cfa
===================================================================
--- tests/limits.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/limits.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Tue May 10 20:44:20 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Nov  6 17:57:55 2018
-// Update Count     : 8
+// Last Modified On : Sun Sep 27 08:45:43 2020
+// Update Count     : 10
 //
 
@@ -147,6 +147,5 @@
 
 int main(int argc, char const *argv[]) {
-	//DUMMY
-	return 0;
+	#pragma message( "Compiled" )						// force non-empty .expect file
 }
 
Index: tests/maybe.cfa
===================================================================
--- tests/maybe.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/maybe.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Thr May 25 16:02:00 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Jul 20 15:24:07 2017
-// Update Count     : 1
+// Last Modified On : Fri Sep 25 15:13:28 2020
+// Update Count     : 2
 //
 
@@ -65,3 +65,4 @@
 	//checkNamedConstructors();
 	checkSetters();
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/nested-types.cfa
===================================================================
--- tests/nested-types.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/nested-types.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,26 +10,26 @@
 // Created On       : Mon Jul 9 10:20:03 2018
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Wed Feb 12 18:21:15 2020
-// Update Count     : 3
+// Last Modified On : Sun Sep 27 08:48:59 2020
+// Update Count     : 6
 //
 
 typedef int N;
 struct A {
-  forall(otype T)
-  struct N {
-    T x;
-  };
+	forall(otype T)
+	struct N {
+		T x;
+	};
 };
 
 struct S {
-  struct T {
-    int i;
-    typedef int Bar;
-  };
-  T x;
+	struct T {
+		int i;
+		typedef int Bar;
+	};
+	T x;
 
-  // struct U;
-  typedef T Bar;
-  typedef int Baz;
+	// struct U;
+	typedef T Bar;
+	typedef int Baz;
 };
 
@@ -65,36 +65,38 @@
 
 int main() {
-  // access nested struct
-  S.T x;
+	// access nested struct
+	S.T x;
 
-  {
-    struct S {
-      int i;
-      struct Z {
-        double d;
-      };
-    };
+	{
+		struct S {
+		  int i;
+		  struct Z {
+		    double d;
+		  };
+		};
 
-    S.Z z;   // gets local S
-    .S.T y;  // lookup at global scope only
+		S.Z z;											// gets local S
+		.S.T y;											// lookup at global scope only
 
-    const volatile .S.T q;
+		const volatile .S.T q;
 #if ERR1
-    T err1;           // error: no T in scope
+		T err1;											// error: no T in scope
 #endif
 #if ERR2
-    .Z err2;          // error: no Z in global scope
-    .S.Baz.Bar err3;  // error: .S.Baz => int, int is not aggregate and should not appear left of the dot
-    .S.Z err4;        // error: no Z in global S
+		.Z err2;										// error: no Z in global scope
+		.S.Baz.Bar err3;								// error: .S.Baz => int, int is not aggregate and should not appear left of the dot
+		.S.Z err4;										// error: no Z in global S
 #endif
-  }
+	}
 
-  // U.S un;
+	// U.S un;
 
-  S.Bar y;
-  S.Baz x;
-  S.T.Bar z;
+	S.Bar y;
+	S.Baz x;
+	S.T.Bar z;
 
-  // A.N(int) x;  // xxx - should not be an error, but currently is.
+	// A.N(int) x;  // xxx - should not be an error, but currently is.
+
+	#pragma message( "Compiled" )			// force non-empty .expect file
 }
 
Index: tests/numericConstants.cfa
===================================================================
--- tests/numericConstants.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/numericConstants.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Wed May 24 22:10:36 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Feb  5 08:58:16 2019
-// Update Count     : 5
+// Last Modified On : Sun Sep 27 07:55:22 2020
+// Update Count     : 7
 // 
 
@@ -63,4 +63,6 @@
 	0x_ff.ffp0;					// hex real
 	0x_1.ffff_ffff_p_128_l;
+
+	#pragma message( "Compiled" )	// force non-empty .expect file
 } // main
 
Index: tests/operators.cfa
===================================================================
--- tests/operators.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/operators.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -31,5 +31,5 @@
 int main(int argc, char const *argv[]) {
 	/* code */
-	return 0;
+	printf( "done\n" );				// non-empty .expect file
 }
 
Index: tests/raii/.expect/ctor-autogen.txt
===================================================================
--- tests/raii/.expect/ctor-autogen.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/raii/.expect/ctor-autogen.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/raii/.expect/init_once.txt
===================================================================
--- tests/raii/.expect/init_once.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/raii/.expect/init_once.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -0,0 +1,1 @@
+done
Index: tests/raii/ctor-autogen.cfa
===================================================================
--- tests/raii/ctor-autogen.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/raii/ctor-autogen.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -151,3 +151,4 @@
 	identity(gcs);
 	identity(gcu);
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/raii/init_once.cfa
===================================================================
--- tests/raii/init_once.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/raii/init_once.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Tue Jun 14 15:43:35 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Fri Mar 22 13:41:26 2019
-// Update Count     : 4
+// Last Modified On : Fri Sep 25 15:36:39 2020
+// Update Count     : 5
 //
 
@@ -188,4 +188,5 @@
 		static_variable();
 	}
+	printf( "done\n" );									// non-empty .expect file
 }
 
Index: tests/result.cfa
===================================================================
--- tests/result.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/result.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Thr May 25 16:50:00 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Jul 20 15:24:12 2017
-// Update Count     : 1
+// Last Modified On : Fri Sep 25 15:22:59 2020
+// Update Count     : 2
 //
 
@@ -66,3 +66,4 @@
 	checkGetters();
 	checkSetters();
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/stdincludes.cfa
===================================================================
--- tests/stdincludes.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/stdincludes.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Tue Aug 29 08:26:14 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Nov  6 18:00:53 2018
-// Update Count     : 6
+// Last Modified On : Sun Sep 27 08:51:38 2020
+// Update Count     : 8
 // 
 
@@ -47,5 +47,7 @@
 #include <wctype.h>
 
-int main() {}
+int main() {
+	#pragma message( "Compiled" )			// force non-empty .expect file
+}
 
 // Local Variables: //
Index: tests/switch.cfa
===================================================================
--- tests/switch.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/switch.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Tue Jul 12 06:50:22 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Nov  6 18:01:34 2018
-// Update Count     : 37
+// Last Modified On : Sun Sep 27 08:35:02 2020
+// Update Count     : 43
 // 
 
@@ -100,4 +100,6 @@
 		j = 5;
 	} // choose
+
+	#pragma message( "Compiled" )						// force non-empty .expect file
 } // main
 
Index: tests/typedefRedef.cfa
===================================================================
--- tests/typedefRedef.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/typedefRedef.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -27,9 +27,8 @@
 typedef int ARR[];
 typedef int ARR[];
-// #ifdef ERR1
-// if a typedef has an array dimension,
-// it can only be redefined to the same dimension
+#ifdef ERR1
+// if a typedef has an array dimension, it can only be redefined to the same dimension
 typedef int ARR[2];
-// #endif
+#endif
 
 typedef int X;
@@ -54,16 +53,18 @@
 
 int main() {
-  typedef int ARR[sz];
+	typedef int ARR[sz];
 
-  // can't redefine typedef which is VLA
+	// can't redefine typedef which is VLA
 #if ERR1
-  typedef int ARR[sz];
+	typedef int ARR[sz];
 #endif
 
-  Foo *x;
+	Foo * x;
 
-  typedef struct Bar Foo;
-  Foo *y;
+	typedef struct Bar Foo;
+	Foo * y;
 
-  typedef int *** pt;
+	typedef int *** pt;
+
+	#pragma message( "Compiled" )			// force non-empty .expect file
 }
Index: tests/typeof.cfa
===================================================================
--- tests/typeof.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/typeof.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -1,11 +1,12 @@
 int main() {
-    int *v1;
-    typeof(v1) v2;
-    typeof(*v1) v3[4];
-    char *v4[4];
-    typeof(typeof(char *)[4]) v5;
-    typeof (int *) v6;
-    typeof( int ( int, int p ) ) *v7;
-    typeof( [int] ( int, int p ) ) *v8;
-    (typeof(v1)) v2; // cast with typeof
+	int *v1;
+	typeof(v1) v2;
+	typeof(*v1) v3[4];
+	char *v4[4];
+	typeof(typeof(char *)[4]) v5;
+	typeof (int *) v6;
+	typeof( int ( int, int p ) ) *v7;
+	typeof( [int] ( int, int p ) ) *v8;
+	(typeof(v1)) v2; // cast with typeof
+	printf( "done\n" );				// non-empty .expect file
 }
Index: tests/variableDeclarator.cfa
===================================================================
--- tests/variableDeclarator.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/variableDeclarator.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Wed Aug 17 08:41:42 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Nov  6 18:02:16 2018
-// Update Count     : 2
+// Last Modified On : Sun Sep 27 07:46:17 2020
+// Update Count     : 13
 // 
 
@@ -18,74 +18,74 @@
 int (f2);
 
-int *f3;
-int **f4;
-int * const *f5;
+int * f3;
+int ** f4;
+int * const * f5;
 int * const * const f6;
 
-int *(f7);
-int **(f8);
-int * const *(f9);
+int * (f7);
+int ** (f8);
+int * const * (f9);
 int * const * const (f10);
 
-int (*f11);
-int (**f12);
-int (* const *f13);
+int (* f11);
+int (** f12);
+int (* const * f13);
 int (* const * const f14);
 
-int f15[];
+int f15[0];
 int f16[10];
-int (f17[]);
+int (f17[0]);
 int (f18[10]);
 
-int *f19[];
-int *f20[10];
-int **f21[];
-int **f22[10];
-int * const *f23[];
-int * const *f24[10];
-int * const * const f25[];
+int * f19[0];
+int * f20[10];
+int ** f21[0];
+int ** f22[10];
+int * const * f23[0];
+int * const * f24[10];
+int * const * const f25[0];
 int * const * const f26[10];
 
-int *(f27[]);
+int *(f27[0]);
 int *(f28[10]);
-int **(f29[]);
+int **(f29[0]);
 int **(f30[10]);
-int * const *(f31[]);
+int * const *(f31[0]);
 int * const *(f32[10]);
-int * const * const (f33[]);
+int * const * const (f33[0]);
 int * const * const (f34[10]);
 
-int (*f35)[];
-int (*f36)[10];
-int (**f37)[];
-int (**f38)[10];
-int (* const *f39)[];
-int (* const *f40)[10];
+int (* f35)[];
+int (* f36)[10];
+int (** f37)[];
+int (** f38)[10];
+int (* const * f39)[];
+int (* const * f40)[10];
 int (* const * const f41)[];
 int (* const * const f42)[10];
 
-int f43[][3];
+int f43[0][3];
 int f44[3][3];
-int (f45[])[3];
+int (f45[0])[3];
 int (f46[3])[3];
-int ((f47[]))[3];
+int ((f47[0]))[3];
 int ((f48[3]))[3];
 
-int *f49[][3];
-int *f50[3][3];
-int **f51[][3];
-int **f52[3][3];
-int * const *f53[][3];
-int * const *f54[3][3];
-int * const * const f55[][3];
+int * f49[0][3];
+int * f50[3][3];
+int ** f51[0][3];
+int ** f52[3][3];
+int * const * f53[0][3];
+int * const * f54[3][3];
+int * const * const f55[0][3];
 int * const * const f56[3][3];
 
-int (*f57[][3]);
-int (*f58[3][3]);
-int (**f59[][3]);
-int (**f60[3][3]);
-int (* const *f61[][3]);
-int (* const *f62[3][3]);
-int (* const * const f63[][3]);
+int (* f57[0][3]);
+int (* f58[3][3]);
+int (** f59[0][3]);
+int (** f60[3][3]);
+int (* const * f61[0][3]);
+int (* const * f62[3][3]);
+int (* const * const f63[0][3]);
 int (* const * const f64[3][3]);
 
@@ -93,7 +93,7 @@
 int (f66)(int);
 
-int *f67(int);
-int **f68(int);
-int * const *f69(int);
+int * f67(int);
+int ** f68(int);
+int * const * f69(int);
 int * const * const f70(int);
 
@@ -104,10 +104,10 @@
 int * const * const (f74)(int);
 
-int (*f75)(int);
-int (**f76)(int);
-int (* const *f77)(int);
+int (* f75)(int);
+int (** f76)(int);
+int (* const * f77)(int);
 int (* const * const f78)(int);
 
-int (*(*f79)(int))();
+int (*(* f79)(int))();
 int (*(* const f80)(int))();
 int (* const(* const f81)(int))();
@@ -119,7 +119,8 @@
 //int fe2()[];				// returning an array
 //int fe3()();				// returning a function
-//int (*fe4)()();				// returning a function
-//int ((*fe5())())[];			// returning an array
+//int (* fe4)()();				// returning a function
+//int ((* fe5())())[];			// returning an array
 
+#ifdef __CFA__
 // Cforall extensions
 
@@ -129,14 +130,14 @@
 const * const * int cf6;
 
-[] int cf15;
+[0] int cf15;
 [10] int cf16;
 
-[] * int cf19;
+[0] * int cf19;
 [10] * int cf20;
-int **cf21[];
+int ** cf21[0];
 [10] * * int cf22;
-[] * const * int cf23;
+[0] * const * int cf23;
 [10] * const * int cf24;
-[] const * const * int cf25;
+[0] const * const * int cf25;
 [10] const * const * int cf26;
 
@@ -150,14 +151,14 @@
 const * const * [10] int cf42;
 
-[][3] int cf43;
+[0][3] int cf43;
 [3][3] int cf44;
 
-[][3] * int cf49;
+[0][3] * int cf49;
 [3][3] * int cf50;
-[][3] * * int cf51;
+[0][3] * * int cf51;
 [3][3] * * int cf52;
-[][3] const * int cf53;
+[0][3] const * int cf53;
 [3][3] * const * int cf54;
-[][3] const * const * int cf55;
+[0][3] const * const * int cf55;
 [3][3] const * const * int cf56;
 
@@ -173,9 +174,9 @@
 
 *[]*[]* [ *[]*[] int ]( *[]*[] int, *[]*[] int ) v3;
+#endif // __CFA__
 
 //Dummy main
-int main(int argc, char const *argv[])
-{
-	return 0;
+int main( int argc, char const * argv[] ) {
+	#pragma message( "Compiled" )						// force non-empty .expect file
 }
 
Index: tests/voidPtr.cfa
===================================================================
--- tests/voidPtr.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/voidPtr.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -13,5 +13,6 @@
 	if ( ! a ) {
 		abort();
-	}	
+	}
+	printf( "done\n" );				// non-empty .expect file
 }
 
Index: tests/warnings/.expect/self-assignment.txt
===================================================================
--- tests/warnings/.expect/self-assignment.txt	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/warnings/.expect/self-assignment.txt	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -24,2 +24,6 @@
 ... to:
   reference to signed int
+warnings/self-assignment.cfa: In function '_X4mainFi___1':
+warnings/self-assignment.cfa:36:9: note: #pragma message: Compiled
+   36 | 
+      |         ^      
Index: tests/warnings/self-assignment.cfa
===================================================================
--- tests/warnings/self-assignment.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/warnings/self-assignment.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -10,6 +10,6 @@
 // Created On       : Thu Mar 1 13:53:57 2018
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Wed Feb 20 07:56:17 2019
-// Update Count     : 3
+// Last Modified On : Sun Sep 27 09:24:34 2020
+// Update Count     : 6
 //
 
@@ -31,8 +31,10 @@
 	s.i = s.i;
 	t.s.i = t.s.i;
+
+	#pragma message( "Compiled" )			// force non-empty .expect file
 }
 
 // Local Variables: //
 // tab-width: 4 //
-// compile-command: "cfa dtor-early-exit" //
+// compile-command: "cfa self-assignment.cfa" //
 // End: //
Index: tests/zombies/structMember.cfa
===================================================================
--- tests/zombies/structMember.cfa	(revision bd47f35ac0e1552b0906395c051d3d614639570c)
+++ tests/zombies/structMember.cfa	(revision 66812dd99f2cc97ee7d08f95d6b009fa64a41a6b)
@@ -53,4 +53,5 @@
 // C useless declarations
 
+#ifdef ERROR
 	int;
 	TD;
@@ -70,4 +71,5 @@
 	W(int);
 	W(int).X;
+#endif // ERROR
 };
 
