Index: tests/.expect/rational.txt
===================================================================
--- tests/.expect/rational.txt	(revision 5dc4c7e68de4ba01e549f417b22e699a6e84e49e)
+++ tests/.expect/rational.txt	(revision d30804ad6634e19d5abd4e2aabcc2b4b9cc9833f)
@@ -1,20 +1,37 @@
 constructor
-3/1 4/1 0/1 0/1 1/1
-1/2 5/7
-2/3 -3/2
--2/3 3/2
-logical
--2/1 -3/2
-1
-1
-1
-0
-0
+a : 3/1 b : 4/1 c : 0/1 d : 0/1 e : 1/1
+a : 1/2 b : 5/7
+a : 2/3 b : -3/2
+a : -2/3 b : 3/2
+
+comparison
+a : -2/1 b : -3/2
+a == 0 : 0
+a == 1 : 0
+a != 0 : 1
+! a : 0
+a != b : 1
+a <  b : 1
+a <=  b : 1
+a >  b : 0
+a >=  b : 0
+
 arithmetic
--2/1 -3/2
--7/2
--1/2
-3/1
-4/3
+a : -2/1 b : -3/2
+a + b : -7/2
+a += b : -7/2
+++a : -5/2
+a++ : -5/2
+a : -3/2
+a - b : 0/1
+a -= b : 0/1
+--a : -1/1
+a-- : -1/1
+a : -2/1
+a * b : 3/1
+a / b : 4/3
+a \ 2 : 4/1 b \ 2 : 9/4
+a \ -2 : 1/4 b \ -2 : 4/9
+
 conversion
 0.75
@@ -24,5 +41,5 @@
 1/7
 355/113
-decompose
+
 more tests
 -3/2
Index: tests/rational.cfa
===================================================================
--- tests/rational.cfa	(revision 5dc4c7e68de4ba01e549f417b22e699a6e84e49e)
+++ tests/rational.cfa	(revision d30804ad6634e19d5abd4e2aabcc2b4b9cc9833f)
@@ -10,6 +10,6 @@
 // Created On       : Mon Mar 28 08:43:12 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sat Feb  8 18:46:23 2020
-// Update Count     : 86
+// Last Modified On : Tue Jul 20 18:13:40 2021
+// Update Count     : 107
 //
 
@@ -26,35 +26,49 @@
 	sout | "constructor";
 	RatInt a = { 3 }, b = { 4 }, c, d = 0, e = 1;
-	sout | a | b | c | d | e;
+	sout | "a : " | a | "b : " | b | "c : " | c | "d : " | d | "e : " | e;
 
 	a = (RatInt){ 4, 8 };
 	b = (RatInt){ 5, 7 };
-	sout | a | b;
+	sout | "a : " | a | "b : " | b;
 	a = (RatInt){ -2, -3 };
 	b = (RatInt){ 3, -2 };
-	sout | a | b;
+	sout | "a : " | a | "b : " | b;
 	a = (RatInt){ -2, 3 };
 	b = (RatInt){ 3, 2 };
-	sout | a | b;
+	sout | "a : " | a | "b : " | b;
+	sout | nl;
 
-	sout | "logical";
+	sout | "comparison";
 	a = (RatInt){ -2 };
 	b = (RatInt){ -3, 2 };
-	sout | a | b;
-//	sout | a == 1; // FIX ME
-	sout | a != b;
-	sout | a <  b;
-	sout | a <= b;
-	sout | a >  b;
-	sout | a >= b;
+	sout | "a : " | a | "b : " | b;
+	sout | "a == 0 : " | a == (Rational(int)){0}; // FIX ME
+	sout | "a == 1 : " | a == (Rational(int)){1}; // FIX ME
+	sout | "a != 0 : " | a != 0;
+	sout | "! a : " | ! a;
+	sout | "a != b : " | a != b;
+	sout | "a <  b : " | a <  b;
+	sout | "a <=  b : " | a <= b;
+	sout | "a >  b : " | a >  b;
+	sout | "a >=  b : " | a >= b;
+	sout | nl;
 
 	sout | "arithmetic";
-	sout | a | b;
-	sout | a + b;
-	sout | a - b;
-	sout | a * b;
-	sout | a / b;
-//	sout | a \ 2 | b \ 2; // FIX ME
-//	sout | a \ -2 | b \ -2;
+	sout | "a : " | a | "b : " | b;
+	sout | "a + b : " | a + b;
+	sout | "a += b : " | (a += b);
+	sout | "++a : " | ++a;
+	sout | "a++ : " | a++;
+	sout | "a : " | a;
+	sout | "a - b : " | a - b;
+	sout | "a -= b : " | (a -= b);
+	sout | "--a : " | --a;
+	sout | "a-- : " | a--;
+	sout | "a : " | a;
+	sout | "a * b : " | a * b;
+	sout | "a / b : " | a / b;
+	sout | "a \\ 2 : " | a \ 2u | "b \\ 2 : " | b \ 2u;
+	sout | "a \\ -2 : " | a \ -2 | "b \\ -2 : " | b \ -2;
+	sout | nl;
 
 	sout | "conversion";
@@ -68,9 +82,10 @@
 	sout | narrow( 0.14285714285714, 16 );
 	sout | narrow( 3.14159265358979, 256 );
+	sout | nl;
 
-	sout | "decompose";
-	int n, d;
-//	[n, d] = a;
-//	sout | a | n | d;
+	// sout | "decompose";
+	// int n, d;
+	// [n, d] = a;
+	// sout | a | n | d;
 
 	sout | "more tests";
