Index: libcfa/src/iostream.cfa
===================================================================
--- libcfa/src/iostream.cfa	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ libcfa/src/iostream.cfa	(revision f9a7cf02009d22652a44bc6eb45f9b86af2f2e54)
@@ -5,11 +5,11 @@
 // file "LICENCE" distributed with Cforall.
 //
-// iostream.cfa --
+// iostream.c --
 //
 // Author           : Peter A. Buhr
 // Created On       : Wed May 27 17:56:53 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Jun  9 20:54:05 2019
-// Update Count     : 804
+// Last Modified On : Sun Jun  9 16:27:17 2019
+// Update Count     : 803
 //
 
Index: libcfa/src/iostream.hfa
===================================================================
--- libcfa/src/iostream.hfa	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ libcfa/src/iostream.hfa	(revision f9a7cf02009d22652a44bc6eb45f9b86af2f2e54)
@@ -10,6 +10,6 @@
 // Created On       : Wed May 27 17:56:53 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Jun  9 22:46:17 2019
-// Update Count     : 315
+// Last Modified On : Sat Jun  8 17:28:44 2019
+// Update Count     : 312
 //
 
@@ -155,5 +155,5 @@
 struct _Ostream_Manip {
 	T val;												// polymorphic base-type
-	unsigned int wd, pc;								// width, precision
+	unsigned char wd, pc;								// width, precision
 	char base;											// numeric base / floating-point style
 	union {
@@ -180,8 +180,8 @@
 	_Ostream_Manip(T) oct( T val ) { return (_Ostream_Manip(T))@{ val, 1, 0, 'o', { .all : 0 } }; } \
 	_Ostream_Manip(T) hex( T val ) { return (_Ostream_Manip(T))@{ val, 1, 0, 'x', { .all : 0 } }; } \
-	_Ostream_Manip(T) wd( unsigned int w, T val ) { return (_Ostream_Manip(T))@{ val, w, 0, CODE, { .all : 0 } }; } \
-	_Ostream_Manip(T) wd( unsigned int w, unsigned char pc, T val ) { return (_Ostream_Manip(T))@{ val, w, pc, CODE, { .flags.pc : true } }; } \
-	_Ostream_Manip(T) & wd( unsigned int w, _Ostream_Manip(T) & fmt ) { fmt.wd = w; return fmt; } \
-	_Ostream_Manip(T) & wd( unsigned int w, unsigned char pc, _Ostream_Manip(T) & fmt ) { fmt.wd = w; fmt.pc = pc; fmt.flags.pc = true; return fmt; } \
+	_Ostream_Manip(T) wd( unsigned char w, T val ) { return (_Ostream_Manip(T))@{ val, w, 0, CODE, { .all : 0 } }; } \
+	_Ostream_Manip(T) wd( unsigned char w, unsigned char pc, T val ) { return (_Ostream_Manip(T))@{ val, w, pc, CODE, { .flags.pc : true } }; } \
+	_Ostream_Manip(T) & wd( unsigned char w, _Ostream_Manip(T) & fmt ) { fmt.wd = w; return fmt; } \
+	_Ostream_Manip(T) & wd( unsigned char w, unsigned char pc, _Ostream_Manip(T) & fmt ) { fmt.wd = w; fmt.pc = pc; fmt.flags.pc = true; return fmt; } \
 	_Ostream_Manip(T) & left( _Ostream_Manip(T) & fmt ) { fmt.flags.left = true; return fmt; } \
 	_Ostream_Manip(T) & upcase( _Ostream_Manip(T) & fmt ) { if ( fmt.base == 'x' || fmt.base == 'b' ) fmt.base -= 32; /* upper case */ return fmt; } \
@@ -214,9 +214,9 @@
 	_Ostream_Manip(T) hex( T val ) { return (_Ostream_Manip(T))@{ val, 1, 0, 'a', { .all : 0 } }; } \
 	_Ostream_Manip(T) sci( T val ) { return (_Ostream_Manip(T))@{ val, 1, 0, 'e', { .all : 0 } }; } \
-	_Ostream_Manip(T) wd( unsigned int w, T val ) { return (_Ostream_Manip(T))@{ val, w, 0, 'f', { .all : 0 } }; } \
-	_Ostream_Manip(T) wd( unsigned int w, unsigned char pc, T val ) { return (_Ostream_Manip(T))@{ val, w, pc, 'f', { .flags.pc : true } }; } \
-	_Ostream_Manip(T) ws( unsigned int w, unsigned char pc, T val ) { return (_Ostream_Manip(T))@{ val, w, pc, 'g', { .flags.pc : true } }; } \
-	_Ostream_Manip(T) & wd( unsigned int w, _Ostream_Manip(T) & fmt ) { fmt.wd = w; return fmt; } \
-	_Ostream_Manip(T) & wd( unsigned int w, unsigned char pc, _Ostream_Manip(T) & fmt ) { fmt.wd = w; fmt.pc = pc; fmt.flags.pc = true; return fmt; } \
+	_Ostream_Manip(T) wd( unsigned char w, T val ) { return (_Ostream_Manip(T))@{ val, w, 0, 'f', { .all : 0 } }; } \
+	_Ostream_Manip(T) wd( unsigned char w, unsigned char pc, T val ) { return (_Ostream_Manip(T))@{ val, w, pc, 'f', { .flags.pc : true } }; } \
+	_Ostream_Manip(T) ws( unsigned char w, unsigned char pc, T val ) { return (_Ostream_Manip(T))@{ val, w, pc, 'g', { .flags.pc : true } }; } \
+	_Ostream_Manip(T) & wd( unsigned char w, _Ostream_Manip(T) & fmt ) { fmt.wd = w; return fmt; } \
+	_Ostream_Manip(T) & wd( unsigned char w, unsigned char pc, _Ostream_Manip(T) & fmt ) { fmt.wd = w; fmt.pc = pc; fmt.flags.pc = true; return fmt; } \
 	_Ostream_Manip(T) & left( _Ostream_Manip(T) & fmt ) { fmt.flags.left = true; return fmt; } \
 	_Ostream_Manip(T) upcase( T val ) { return (_Ostream_Manip(T))@{ val, 1, 0, 'G', { .all : 0 } }; } \
@@ -242,6 +242,6 @@
 	_Ostream_Manip(char) oct( char val ) { return (_Ostream_Manip(char))@{ val, 1, 0, 'o', { .all : 0 } }; }
 	_Ostream_Manip(char) hex( char val ) { return (_Ostream_Manip(char))@{ val, 1, 0, 'x', { .all : 0 } }; }
-	_Ostream_Manip(char) wd( unsigned int w, char val ) { return (_Ostream_Manip(char))@{ val, w, 0, 'c', { .all : 0 } }; }
-	_Ostream_Manip(char) & wd( unsigned int w, _Ostream_Manip(char) & fmt ) { fmt.wd = w; return fmt; }
+	_Ostream_Manip(char) wd( unsigned char w, char val ) { return (_Ostream_Manip(char))@{ val, w, 0, 'c', { .all : 0 } }; }
+	_Ostream_Manip(char) & wd( unsigned char w, _Ostream_Manip(char) & fmt ) { fmt.wd = w; return fmt; }
 	_Ostream_Manip(char) & left( _Ostream_Manip(char) & fmt ) { fmt.flags.left = true; return fmt; }
 	_Ostream_Manip(char) & upcase( _Ostream_Manip(char) & fmt ) { if ( fmt.base == 'x' || fmt.base == 'b' ) fmt.base -= 32; /* upper case */ return fmt; }
@@ -259,8 +259,8 @@
 	_Ostream_Manip(const char *) oct( const char * val ) { return (_Ostream_Manip(const char *))@{ val, 1, 0, 'o', { .all : 0 } }; }
 	_Ostream_Manip(const char *) hex( const char * val ) { return (_Ostream_Manip(const char *))@{ val, 1, 0, 'x', { .all : 0 } }; }
-	_Ostream_Manip(const char *) wd( unsigned int w, const char * val ) { return (_Ostream_Manip(const char *))@{ val, w, 0, 's', { .all : 0 } }; }
-	_Ostream_Manip(const char *) wd( unsigned int w, unsigned char pc, const char * val ) { return (_Ostream_Manip(const char *))@{ val, w, pc, 's', { .flags.pc : true } }; }
-	_Ostream_Manip(const char *) & wd( unsigned int w, _Ostream_Manip(const char *) & fmt ) { fmt.wd = w; return fmt; }
-	_Ostream_Manip(const char *) & wd( unsigned int w, unsigned char pc, _Ostream_Manip(const char *) & fmt ) { fmt.wd = w; fmt.pc = pc; fmt.flags.pc = true; return fmt; }
+	_Ostream_Manip(const char *) wd( unsigned char w, const char * val ) { return (_Ostream_Manip(const char *))@{ val, w, 0, 's', { .all : 0 } }; }
+	_Ostream_Manip(const char *) wd( unsigned char w, unsigned char pc, const char * val ) { return (_Ostream_Manip(const char *))@{ val, w, pc, 's', { .flags.pc : true } }; }
+	_Ostream_Manip(const char *) & wd( unsigned char w, _Ostream_Manip(const char *) & fmt ) { fmt.wd = w; return fmt; }
+	_Ostream_Manip(const char *) & wd( unsigned char w, unsigned char pc, _Ostream_Manip(const char *) & fmt ) { fmt.wd = w; fmt.pc = pc; fmt.flags.pc = true; return fmt; }
 	_Ostream_Manip(const char *) & left( _Ostream_Manip(const char *) & fmt ) { fmt.flags.left = true; return fmt; }
 	_Ostream_Manip(const char *) & nobase( _Ostream_Manip(const char *) & fmt ) { fmt.flags.nobsdp = true; return fmt; }
@@ -343,7 +343,7 @@
 static inline _Istream_Cstr skip( const char * scanset ) { return (_Istream_Cstr){ 0p, scanset, -1, { .all : 0 } }; }
 static inline _Istream_Cstr incl( const char * scanset, char * s ) { return (_Istream_Cstr){ s, scanset, -1, { .flags.inex : false } }; }
-static inline _Istream_Cstr incl( const char * scanset, _Istream_Cstr & fmt ) { fmt.scanset = scanset; fmt.flags.inex = false; return fmt; }
+static inline _Istream_Cstr incl( const char * scanset, _Istream_Cstr & fmt ) { fmt.flags.inex = false; return fmt; }
 static inline _Istream_Cstr excl( const char * scanset, char * s ) { return (_Istream_Cstr){ s, scanset, -1, { .flags.inex : true } }; }
-static inline _Istream_Cstr excl( const char * scanset, _Istream_Cstr & fmt ) { fmt.scanset = scanset; fmt.flags.inex = true; return fmt; }
+static inline _Istream_Cstr excl( const char * scanset, _Istream_Cstr & fmt ) { fmt.flags.inex = true; return fmt; }
 static inline _Istream_Cstr cstr( char * s ) { return (_Istream_Cstr){ s, 0p, -1, { .all : 0 } }; }
 static inline _Istream_Cstr ignore( const char * s ) { return (_Istream_Cstr)@{ s, 0p, -1, { .flags.ignore : true } }; }
@@ -363,5 +363,5 @@
 static inline _Istream_Manip(T) ignore( const T & val ) { return (_Istream_Manip(T))@{ (T &)val, -1, true }; } \
 static inline _Istream_Manip(T) ignore( _Istream_Manip(T) & fmt ) { fmt.ignore = true; return fmt; } \
-static inline _Istream_Manip(T) wdi( unsigned int w, T & val ) { return (_Istream_Manip(T))@{ val, w, false }; } \
+static inline _Istream_Manip(T) wd( unsigned int w, T & val ) { return (_Istream_Manip(T))@{ val, w, false }; } \
 forall( dtype istype | istream( istype ) ) { \
 	istype & ?|?( istype & is, _Istream_Manip(T) f ); \
Index: sts/.expect/manipulatorsInput.txt
===================================================================
--- tests/.expect/manipulatorsInput.txt	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ 	(revision )
@@ -1,94 +1,0 @@
-1 yyyyyyyyyyyyyyyyyyyy
-2 abcxxx
-3 abcxxx
-4 aaaaaaaa
-5 aaaaaaaa
-6 aabbccbb
-7 dddwww
-8 dddwww
-9 dddwww
-10 aaaaaaaa
-11 wwwwwwww
-12 wwwwwwww
-13 wwwwwwww
-1 yyyyyyyyyyyyyyyyyyyy
-2 abcxxx
-3 abcxxx
-4 aaaaaaaa
-5 aaaaaaaa
-6 aabbccbb
-7 dddwww
-8 dddwww
-9 dddwww
-10 aaaaaaaa
-11 wwwwwwww
-12 wwwwwwww
-13 wwwwwwww
-a
-b
-b
-b
--1
-15
-15
-15
-255
-15
-15
-15
-255
-15
-15
-15
-255
-15
-15
-15
-255
-15
-15
-15
-255
-15
-15
-15
-255
-15
-15
-15
-255
-15
-15
-15
-255
-15
-15
-15
-255
-15
-15
-15
-3.5
-345.6
-345.6
-345.6
-3.5
-345.6
-345.6
-345.6
-3.5
-345.6
-345.6
-345.6
-3.5+3.5i
-345.6+345.6i
-345.6+345.6i
-345.6+345.6i
-3.5+3.5i
-345.6+345.6i
-345.6+345.6i
-345.6+345.6i
-3.5+3.5i
-345.6+345.6i
-345.6+345.6i
-345.6+345.6i
Index: sts/.expect/manipulatorsOutput1.txt
===================================================================
--- tests/.expect/manipulatorsOutput1.txt	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ 	(revision )
@@ -1,50 +1,0 @@
-signed char
--12 -12   -12 -12   364 0364 f4 0xf4     0xf4 0x00000000f4    0X0F4 -012     -0000012
--12 -12   -12 -12   364 0364 f4 0xf4     0xf4 0x00000000f4    0X0F4 -012     -0000012
-unsigned char
-12 12    12 12    14 014 c 0xc      0xc 0x000000000c    0X00C 012      00000012
-12 12    12 12    14 014 c 0xc      0xc 0x000000000c    0X00C 012      00000012
-signed short int
--12 -12   -12 -12   177764 0177764 fff4 0xfff4   0xfff4 0x000000fff4   0XFFF4 -012     -0000012
--12 -12   -12 -12   177764 0177764 fff4 0xfff4   0xfff4 0x000000fff4   0XFFF4 -012     -0000012
-unsigned short int
-12 12    12 12    14 014 c 0xc      0xc 0x000000000c    0X00C 012      00000012
-12 12    12 12    14 014 c 0xc      0xc 0x000000000c    0X00C 012      00000012
-signed int
--12 -12   -12 -12   37777777764 037777777764 fffffff4 0xfffffff4 0xfffffff4 0x00fffffff4 0XFFFFFFF4 -012     -0000012
--12 -12   -12 -12   37777777764 037777777764 fffffff4 0xfffffff4 0xfffffff4 0x00fffffff4 0XFFFFFFF4 -012     -0000012
-unsigned int
-12 12    12 12    14 014 c 0xc      0xc 0x000000000c    0X00C 012      00000012
-12 12    12 12    14 014 c 0xc      0xc 0x000000000c    0X00C 012      00000012
-signed long long int
--12 -12   -12 -12   1777777777777777777764 01777777777777777777764 fffffffffffffff4 0xfffffffffffffff4 0xfffffffffffffff4 0xfffffffffffffff4 0XFFFFFFFFFFFFFFF4 -012     -0000012
--12 -12   -12 -12   1777777777777777777764 01777777777777777777764 fffffffffffffff4 0xfffffffffffffff4 0xfffffffffffffff4 0xfffffffffffffff4 0XFFFFFFFFFFFFFFF4 -012     -0000012
-unsigned long long int
-12 12    12 12    14 014 c 0xc      0xc 0x000000000c    0X00C 012      00000012
-12 12    12 12    14 014 c 0xc      0xc 0x000000000c    0X00C 012      00000012
-
-binary integral
-0b0 0b1101 0B1101 1101 0b1101     0b1101 0b1101   0b001101 0b0000001101 0b001101
-
-float
-0         3  3.00000 3.537    3.537        4       4.      3.5      3.5 3        3.5      3.5      +3.5     +3.5     000003.5 3.54E+00 0x1.c5p+1 0X1.C5P+1 3.54e+00
-0. 3.000000 3.000000 3.537 3.537000        4        4      3.5      3.5 3.       3.5      3.5      +3.5     +3.5     000003.5 3.54E+00 0x1.c5p+1 0X1.C5P+1 3.54e+00
-double
-0  3.000000 3.537 3.537000       4.        4     3.54 3.54     +3.54    00003.54 3.54E+00 0x1.c5p+1 0X1.C5P+1 3.54e+00
-0. 3.000000 3.537 3.537000        4       4.     3.54 3.54     +3.54    00003.54 3.54E+00 0x1.c5p+1 0X1.C5P+1 3.54e+00
-long double
-0  3.000000 3.537 3.537000       4.        4     3.54 3.54     +3.54    00003.54 3.54E+00 0xe.26p-2 0XE.26P-2 3.54e+00
-0. 3.000000 3.53699999999999992 3.537000        4       4.     3.54 3.54     +3.54    00003.54 3.54E+00 0xe.26p-2 0XE.26P-2 3.54e+00
-
-char
-a  a     a a     141 0141 61 0x61     0x61     0X61 a               a
-a  a     a a     141 0141 61 0x61     0x61     0X61 a               a
-
-string
-abcd     abcd   abcd abcd    
-abcd     abcd   abcd abcd    
-
-binary string
-0b110000 0b1100001 0b1100010 0b1100011 0b1100100 0141 0142 0143 0144 0x61 0x62 0x63 0x64
-110000 1100001 1100010 1100011 1100100 141 142 143 144 61 62 63 64
-  110000  1100001  1100010  1100011  1100100  141  142  143  144  61  62  63  64
Index: sts/.expect/manipulatorsOutput2.txt
===================================================================
--- tests/.expect/manipulatorsOutput2.txt	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ 	(revision )
@@ -1,32 +1,0 @@
-
-0b0 0b11011 0b11011 0b11011 0b11011
-0b11100101 0b1111111111100101 0b11111111111111111111111111100101 0b1111111111111111111111111111111111111111111111111111111111100101
-0 033 033 033 033
-0345 0177745 037777777745 01777777777777777777745
-0 0x1b 0x1b 0x1b 0x1b
-0xe5 0xffe5 0xffffffe5 0xffffffffffffffe5
-0x0p+0. 0x1.b8p+4 0x1.b8p+4 0xd.cp+1
--0x1.b8p+4 -0x1.b8p+4 -0xd.cp+1
-0.000000e+00 2.750000e+01 -2.750000e+01
-0B11011 0X1B 2.75E-09 0X1.B8P+4
-11011 33 1b
-0. 0 27. 27 27.5
-+27 -27 +27 -27 +27.5 -27.5
-  34  34 34
-  4.000000  4.000000 4.000000
-  ab  ab ab
-34567 34567 34567
-3456.000000 3456.000000 3456.000000
-abcde abcde abcde
- 034     0034 0000000034
-3456     3456       3456
-     0000000034
-27.500     27.5      28. 27.50000000
-27.000 27.500     27.5      28. 27.50000000
-27   27.000000  27.500000  027  27.500    
-234.567 234.57  234.6   235.
-234567. 2.3457e+05 2.346e+05 2.35e+05
-234567. 234567. 234567. 234567.
-  abcd     abcd abcd
-  abcd abcdefgh    abc
-0027  027 0027.500
Index: sts/.in/manipulatorsInput.txt
===================================================================
--- tests/.in/manipulatorsInput.txt	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ 	(revision )
@@ -1,25 +1,0 @@
-abc
-abcxxx
-abcyyy
-aaaaaaaaxxxxxxxxaabbccbbdddwwwbbbbbbbbwwwwwwwwaaaaaaaawwwwwwww
-abc
-abcxxx
-abcyyy
-aaaaaaaaxxxxxxxxaabbccbbdddwwwbbbbbbbbwwwwwwwwaaaaaaaawwwwwwww
-abcd
-0xff 017 15-15
-0xff 017 15-15
-0xff 017 15-15
-0xff 017 15-15
-0xff 017 15-15
-0xff 017 15-15
-0xff 017 15-15
-0xff 017 15-15
-0xff 017 15-15
-0xff 017 15-15
-3.5 3.456E+2 -0x1.2p-3 0X1.23p3
-3.5 3.456E+2 -0x1.2p-3 0X1.23p3
-3.5 3.456E+2 -0x1.2p-3 0X1.23p3
-3.5 3.5 3.456E+23.456E+2 -0x1.2p-3 3.5 0X1.23p3     3.5
-3.5 3.5 3.456E+23.456E+2 -0x1.2p-3 3.5 0X1.23p3     3.5
-3.5 3.5 3.456E+23.456E+2 -0x1.2p-3 3.5 0X1.23p3     3.5
Index: sts/manipulatorsInput.cfa
===================================================================
--- tests/manipulatorsInput.cfa	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ 	(revision )
@@ -1,159 +1,0 @@
-// 
-// Cforall Version 1.0.0 Copyright (C) 2019 University of Waterloo
-// 
-// manipulatorsInput.cfa -- 
-// 
-// Author           : Peter A. Buhr
-// Created On       : Sat Jun  8 17:58:54 2019
-// Last Modified By : Peter A. Buhr
-// Last Modified On : Mon Jun 10 08:11:03 2019
-// Update Count     : 7
-// 
-
-#include <fstream.hfa>
-#include <stdio.h>					// scanf
-
-int main() {
-	{
-		char s[] = "yyyyyyyyyyyyyyyyyyyy";
-		scanf( "abc" );			printf( "1 %s\n", s );
-		scanf( "%s", s );					printf( "2 %s\n", s );
-		scanf( "%*s" );						printf( "3 %s\n", s );
-		scanf( "%8s", s );					printf( "4 %s\n", s );
-		scanf( "%*8s" );					printf( "5 %s\n", s );
-
-		scanf( "%[abc]", s );				printf( "6 %s\n", s );
-		scanf( "%[^abc]", s );				printf( "7 %s\n", s );
-		scanf( "%*[abc]" );					printf( "8 %s\n", s );
-		scanf( "%*[^abc]" );				printf( "9 %s\n", s );
-		scanf( "%8[abc]", s );				printf( "10 %s\n", s );
-		scanf( "%8[^abc]", s );				printf( "11 %s\n", s );
-		scanf( "%*8[abc]" );				printf( "12 %s\n", s );
-		scanf( "%*8[^abc]" );				printf( "13 %s\n", s );
-	}
-	{
-		char s[] = "yyyyyyyyyyyyyyyyyyyy";
-		sin | skip( "abc" );					sout | "1" | s;
-		sin | cstr( s );						sout | "2" | s;
-		sin | ignore( cstr( s ) );				sout | "3" | s;
-		sin | wd( 8, cstr( s ) );				sout | "4" | s;
-		sin | ignore( wd( 8, cstr( s ) ) );		sout | "5" | s;
-
-		sin | incl( "abc", s );					sout | "6" | s;
-		sin | excl( "abc", s );					sout | "7" | s;
-		sin | ignore( incl( "abc", s ) );		sout | "8" | s;
-		sin | ignore( excl( "abc", s ) );		sout | "9" | s;
-		sin | wd( 8, incl( "abc", s ) );		sout | "10" | s;
-		sin | wd( 8, excl( "abc", s ) );		sout | "11" | s;
-		sin | ignore( wd( 8, incl( "abc", s ) ) );	sout | "12" | s;
-		sin | ignore( wd( 8, excl( "abc", s ) ) );	sout | "13" | s;
-	}
-	{
-		char c;
-		sin | c;							sout | c;
-		sin | wdi( 3, c );					sout | c;
-		sin | ignore( c );					sout | c;
-		sin | ignore( wdi( 3, c ) );		sout | c;
-
-		signed char sc;
-		sin | sc;							sout | sc;
-		sin | wdi( 3, sc );					sout | sc;
-		sin | ignore( sc );					sout | sc;
-		sin | ignore( wdi( 3, sc ) );		sout | sc;
-
-		unsigned char usc;
-		sin | usc;							sout | usc;
-		sin | wdi( 3, usc );				sout | usc;
-		sin | ignore( usc );				sout | usc;
-		sin | ignore( wdi( 3, usc ) );		sout | usc;
-
-		signed short int ssi;
-		sin | ssi;							sout | ssi;
-		sin | wdi( 3, ssi );				sout | ssi;
-		sin | ignore( ssi );				sout | ssi;
-		sin | ignore( wdi( 3, ssi ) );		sout | ssi;
-
-		unsigned short int usi;
-		sin | usi;							sout | usi;
-		sin | wdi( 3, usi );				sout | usi;
-		sin | ignore( usi );				sout | usi;
-		sin | ignore( wdi( 3, usi ) );		sout | usi;
-
-		signed int si;
-		sin | si;							sout | si;
-		sin | wdi( 3, si );					sout | si;
-		sin | ignore( si );					sout | si;
-		sin | ignore( wdi( 3, si ) );		sout | si;
-
-		unsigned int ui;
-		sin | ui;							sout | ui;
-		sin | wdi( 3, ui );					sout | ui;
-		sin | ignore( ui );					sout | ui;
-		sin | ignore( wdi( 3, ui ) );		sout | ui;
-
-		signed long int sli;
-		sin | sli;							sout | sli;
-		sin | wdi( 3, sli );				sout | sli;
-		sin | ignore( sli );				sout | sli;
-		sin | ignore( wdi( 3, sli ) );		sout | sli;
-
-		unsigned long int uli;
-		sin | uli;							sout | uli;
-		sin | wdi( 3, uli );				sout | uli;
-		sin | ignore( uli );				sout | uli;
-		sin | ignore( wdi( 3, uli ) );		sout | uli;
-
-		signed long long int slli;
-		sin | slli;							sout | slli;
-		sin | wdi( 3, slli );				sout | slli;
-		sin | ignore( slli );				sout | slli;
-		sin | ignore( wdi( 3, slli ) );		sout | slli;
-
-		unsigned long long int ulli;
-		sin | ulli;							sout | ulli;
-		sin | wdi( 3, ulli );				sout | ulli;
-		sin | ignore( ulli );				sout | ulli;
-		sin | ignore( wdi( 3, ulli ) );		sout | ulli;
-
-		float f;
-		sin | f;							sout | f;
-		sin | wdi( 8, f );					sout | f;
-		sin | ignore( f );					sout | f;
-		sin | ignore( wdi( 8, f ) );		sout | f;
-
-		double d;
-		sin | d;							sout | d;
-		sin | wdi( 8, d );					sout | d;
-		sin | ignore( d );					sout | d;
-		sin | ignore( wdi( 8, d ) );		sout | d;
-
-		long double ld;
-		sin | ld;							sout | ld;
-		sin | wdi( 8, ld );					sout | ld;
-		sin | ignore( ld );					sout | ld;
-		sin | ignore( wdi( 8, ld ) );		sout | ld;
-
-		float _Complex fc;
-		sin | fc;							sout | fc;
-		sin | wdi( 8, fc );					sout | fc;
-		sin | ignore( fc );					sout | fc;
-		sin | ignore( wdi( 8, fc ) );		sout | fc;
-
-		double _Complex dc;
-		sin | dc;							sout | dc;
-		sin | wdi( 8, dc );					sout | dc;
-		sin | ignore( dc );					sout | dc;
-		sin | ignore( wdi( 8, dc ) );		sout | dc;
-
-		long double _Complex ldc;
-		sin | ldc;							sout | ldc;
-		sin | wdi( 8, ldc );				sout | ldc;
-		sin | ignore( ldc );				sout | ldc;
-		sin | ignore( wdi( 8, ldc ) );		sout | ldc;
-	}
-} // main
-
-// Local Variables: //
-// tab-width: 4 //
-// compile-command: "cfa manipulatorsInput.cfa" //
-// End: //
Index: sts/manipulatorsOutput1.cfa
===================================================================
--- tests/manipulatorsOutput1.cfa	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ 	(revision )
@@ -1,98 +1,0 @@
-// 
-// Cforall Version 1.0.0 Copyright (C) 2019 University of Waterloo
-// 
-// manipulatorsOutput1.cfa -- 
-// 
-// Author           : Peter A. Buhr
-// Created On       : Sat Jun  8 18:04:11 2019
-// Last Modified By : Peter A. Buhr
-// Last Modified On : Mon Jun 10 12:37:28 2019
-// Update Count     : 8
-// 
-
-#include <fstream.hfa>
-
-int main() {
-	sout | "signed char";
-	signed char sc = -12;
-	printf( "%hhd %2hhd %5.2hhd %-5.2hhd %hho %#hho %hhx %#hhx %#8hhx %#8.10hhx %#8.3hhX %+-8.3hhd %08hhd\n", sc, sc, sc, sc, sc, sc, sc, sc, sc, sc, sc, sc, sc );
-	sout | sc | wd(2,sc) | wd(5,2,sc) | left(wd(5,2,sc)) | nobase(oct(sc)) | oct(sc) | nobase(hex(sc)) | hex(sc) | wd(8,hex(sc)) | wd(8,10,hex(sc)) | upcase(wd(8,3,hex(sc))) | left(sign(upcase(wd(8,3,sc)))) | pad0(wd(8,sc));
-
-	sout | "unsigned char";
-	unsigned char usc = 12;
-	printf( "%hhu %2hhu %5.2hhu %-5.2hhu %hho %#hho %hhx %#hhx %#8hhx %#8.10hhx %#8.3hhX %-8.3hhu %08hhu\n", usc, usc, usc, usc, usc, usc, usc, usc, usc, usc, usc, usc, usc );
-	sout | usc | wd(2,usc) | wd(5,2,usc) | left(wd(5,2,usc)) | nobase(oct(usc)) | oct(usc) | nobase(hex(usc)) | hex(usc) | wd(8,hex(usc)) | wd(8,10,hex(usc)) | upcase(wd(8,3,hex(usc))) | left(upcase(wd(8,3,usc))) | pad0(wd(8,usc));
-
-	sout | "signed short int";
-	signed short int si = -12;
-	printf( "%hd %2hd %5.2hd %-5.2hd %ho %#ho %hx %#hx %#8hx %#8.10hx %#8.3hX %+-8.3hd %08hd\n", si, si, si, si, si, si, si, si, si, si, si, si, si );
-	sout | si | wd(2,si) | wd(5,2,si) | left(wd(5,2,si)) | nobase(oct(si)) | oct(si) | nobase(hex(si)) | hex(si) | wd(8,hex(si)) | wd(8,10,hex(si)) | upcase(wd(8,3,hex(si))) | left(sign(upcase(wd(8,3,si)))) | pad0(wd(8,si));
-
-	sout | "unsigned short int";
-	unsigned short int usi = 12;
-	printf( "%hu %2hu %5.2hu %-5.2hu %ho %#ho %hx %#hx %#8hx %#8.10hx %#8.3hX %-8.3hu %08hu\n", usi, usi, usi, usi, usi, usi, usi, usi, usi, usi, usi, usi, usi );
-	sout | usi | wd(2,usi) | wd(5,2,usi) | left(wd(5,2,usi)) | nobase(oct(usi)) | oct(usi) | nobase(hex(usi)) | hex(usi) | wd(8,hex(usi)) | wd(8,10,hex(usi)) | upcase(wd(8,3,hex(usi))) | left(upcase(wd(8,3,usi))) | pad0(wd(8,usi));
-
-	sout | "signed int";
-	signed int i = -12;
-	printf( "%d %2d %5.2d %-5.2d %o %#o %x %#x %#8x %#8.10x %#8.3X %+-8.3d %08d\n", i, i, i, i, i, i, i, i, i, i, i, i, i );
-	sout | i | wd(2,i) | wd(5,2,i) | left(wd(5,2,i)) | nobase(oct(i)) | oct(i) | nobase(hex(i)) | hex(i) | wd(8,hex(i)) | wd(8,10,hex(i)) | upcase(wd(8,3,hex(i))) | left(sign(upcase(wd(8,3,i)))) | pad0(wd(8,i));
-
-	sout | "unsigned int";
-	unsigned int ui = 12;
-	printf( "%u %2u %5.2u %-5.2u %o %#o %x %#x %#8x %#8.10x %#8.3X %-8.3u %08u\n", ui, ui, ui, ui, ui, ui, ui, ui, ui, ui, ui, ui, ui );
-	sout | ui | wd(2,ui) | wd(5,2,ui) | left(wd(5,2,ui)) | nobase(oct(ui)) | oct(ui) | nobase(hex(ui)) | hex(ui) | wd(8,hex(ui)) | wd(8,10,hex(ui)) | upcase(wd(8,3,hex(ui))) | left(upcase(wd(8,3,ui))) | pad0(wd(8,ui));
-
-	sout | "signed long long int";
-	signed long long int lli = -12;
-	printf( "%lld %2lld %5.2lld %-5.2lld %llo %#llo %llx %#llx %#8llx %#8.10llx %#8.3llX %+-8.3lld %08lld\n", lli, lli, lli, lli, lli, lli, lli, lli, lli, lli, lli, lli, lli );
-	sout | lli | wd(2,lli) | wd(5,2,lli) | left(wd(5,2,lli)) | nobase(oct(lli)) | oct(lli) | nobase(hex(lli)) | hex(lli) | wd(8,hex(lli)) | wd(8,10,hex(lli)) | upcase(wd(8,3,hex(lli))) | left(sign(upcase(wd(8,3,lli)))) | pad0(wd(8,lli));
-
-	sout | "unsigned long long int";
-	unsigned long long int ulli = 12;
-	printf( "%llu %2llu %5.2llu %-5.2llu %llo %#llo %llx %#llx %#8llx %#8.10llx %#8.3llX %-8.3llu %08llu\n", ulli, ulli, ulli, ulli, ulli, ulli, ulli, ulli, ulli, ulli, ulli, ulli, ulli );
-	sout | ulli | wd(2,ulli) | wd(5,2,ulli) | left(wd(5,2,ulli)) | nobase(oct(ulli)) | oct(ulli) | nobase(hex(ulli)) | hex(ulli) | wd(8,hex(ulli)) | wd(8,10,hex(ulli)) | upcase(wd(8,3,hex(ulli))) | left(upcase(wd(8,3,ulli))) | pad0(wd(8,ulli));
-
-	sout | nl | "binary integral";
-	sout | bin(0) | bin(13) | upcase(bin(13)) | nobase(bin(13)) | left(wd(8,bin(13))) | wd(8,bin(13)) | pad0(left(wd(8,bin(13)))) | pad0(wd(8,bin(13))) | pad0(wd(8,10,bin(13))) | pad0(wd(8,6,bin(13)));
-
-
-	sout | nl | "float";
-	float f = 3.537;
-	printf( "%g  %8g %#8g %g %8g %8.0g %#8.0g %8.2g %#8.2g %-8.2g %-8.2g %-#8.2g %-+8.2g %-+#8.2g %08.2g %8.2E %8.2a %#8.2A %#8.2e\n",
-		    0.0,3.0F,3.0F, f,  f,    f,     f,    f,     f,  3.0F,      f,      f,      f,       f,     f,    f,    f,     f,     f );
-	sout | 0.0 | wd(8, 3.0F) | nodp(wd(8, 3.0F)) | f | wd(8, f) | ws(8,0, f) | nodp(ws(8,0, f)) | ws(8,2, f) | nodp(ws(8,2, f)) | left(ws(8,2, 3.0F)) | left(ws(8,2, f)) | left(nodp(ws(8,2, f))) | left(sign(ws(8,2, f))) | left(sign(nodp(ws(8,2, f)))) | pad0(ws(8,2, f)) | upcase(wd(8,2, sci(f))) | wd(8,2, hex(f)) | upcase(wd(8,2, hex(f))) | nodp(wd(8,2, sci(f)));
-
-	sout | "double";
-	double d = 3.537;
-	printf( "%g  %#8f %g %8f %#8.0f %8.0f %8.2f %-8.2f %-+#8.2f %08.2F %8.2E %8.2a %8.2A %8.2e\n",
-			0.0,  3.0, d,  d,     d,    d,    d,     d,       d,     d,    d,    d,    d,    d );
-	sout | 0.0 | wd(8, 3.0) | d | wd(8, d) | nodp(wd(8,0, d)) | wd(8,0, d) | wd(8,2, d) | left(wd(8,2, d)) | left(sign(wd(8,2, d))) | pad0(upcase(wd(8,2, d))) | upcase(wd(8,2, sci(d))) | wd(8,2, hex(d)) | upcase(wd(8,2, hex(d))) | wd(8,2, sci(d));
-
-	sout | "long double";
-	long double ld = 3.537;
-	printf( "%Lg  %#8Lf %Lg %8Lf %#8.0Lf %8.0Lf %8.2Lf %-8.2Lf %-+#8.2Lf %08.2LF %8.2LE %8.2La %8.2LA %8.2Le\n",
-			0.0L,  3.0L, ld,  ld,     ld,    ld,    ld,     ld,       ld,     ld,    ld,    ld,    ld,    ld );
-	sout | 0.0L | wd(8, 3.0L) | ld | wd(8, ld) | nodp(wd(8,0, ld)) | wd(8,0, ld) | wd(8,2, ld) | left(wd(8,2, ld)) | left(sign(wd(8,2, ld))) | pad0(upcase(wd(8,2, ld))) | upcase(wd(8,2, sci(ld))) | wd(8,2, hex(ld)) | upcase(wd(8,2, hex(ld))) | wd(8,2, sci(ld));
-
-
-	sout | nl | "char";
-	char c = 'a';
-	printf( "%c %2c %5c %-5c %hho %#hho %hhx %#hhx %#8hhx %#8hhX %-8c %8c\n", c, c, c, c, c, c, c, c, c, c, c, c );
-	sout | c | ' ' | wd(2,c) | wd(5,c) | left(wd(5,c)) | nobase(oct(c)) | oct(c) | nobase(hex(c)) | hex(c) | wd(8,hex(c)) | upcase(wd(8,hex(c))) | left(wd(8,c)) | wd(8,c);
-
-	sout | nl | "string";
-	const char * s = "abcd";
-	printf( "%s %8s %6.8s %-8s\n", s, s, s, s );
-	sout | s | wd(8,s) | wd(6,8,s) | left(wd(8,s));
-
-	sout | nl | "binary string";
-	sout | bin("0") | bin(s) | oct(s) | hex(s);
-	sout | nobase(bin("0")) | nobase(bin(s)) | nobase(oct(s)) | nobase(hex(s));
-	sout | nobase(wd(8,bin("0"))) | nobase(wd(8,bin(s))) | nobase(wd(4,oct(s))) | nobase(wd(3,hex(s)));
-}
-
-// Local Variables: //
-// tab-width: 4 //
-// compile-command: "cfa -Wall -Wextra amanipulatorsOutput1.cfa" //
-// End: //
Index: sts/manipulatorsOutput2.cfa
===================================================================
--- tests/manipulatorsOutput2.cfa	(revision 6949c453ada87adcc2c0bf104c3762261e5cdc09)
+++ 	(revision )
@@ -1,55 +1,0 @@
-// 
-// Cforall Version 1.0.0 Copyright (C) 2019 University of Waterloo
-// 
-// manipulatorsOutput2.cfa -- 
-// 
-// Author           : Peter A. Buhr
-// Created On       : Sat Jun  8 18:04:11 2019
-// Last Modified By : Peter A. Buhr
-// Last Modified On : Mon Jun 10 12:37:57 2019
-// Update Count     : 8
-// 
-
-#include <fstream.hfa>
-
-int main() {
-	sout | nl;
-    sout | bin(0) | bin(27HH) | bin(27H) | bin(27) | bin(27L);
-    sout | bin(-27HH) | bin(-27H) | bin(-27) | bin(-27L);
-    sout | oct(0) | oct(27HH) | oct(27H) | oct(27) | oct(27L);
-    sout | oct(-27HH) | oct(-27H) | oct(-27) | oct(-27L);
-    sout | hex(0) | hex(27HH) | hex(27H) | hex(27) | hex(27L);
-    sout | hex(-27HH) | hex(-27H) | hex(-27) | hex(-27L);
-    sout | hex(0.0) | hex(27.5F) | hex(27.5) | hex(27.5L);
-    sout | hex(-27.5F) | hex(-27.5) | hex(-27.5L);
-	sout | sci(0.0) | sci(27.5) | sci(-27.5);
-	sout | upcase(bin(27)) | upcase(hex(27)) | upcase(27.5e-10) | upcase(hex(27.5));
-	sout | nobase(bin(27)) | nobase(oct(27)) | nobase(hex(27));
-    sout | 0. | nodp(0.) | 27.0 | nodp(27.0) | nodp(27.5);
-    sout | sign(27) | sign(-27) | sign(27.) | sign(-27.) | sign(27.5) | sign(-27.5);
-	sout | wd( 4, 34) | wd( 3, 34 ) | wd( 2, 34 );
-	sout | wd( 10, 4.) | wd( 9, 4. ) | wd( 8, 4. );
-	sout | wd( 4, "ab" ) | wd( 3, "ab" ) | wd( 2, "ab" );
-	sout | wd( 4, 34567 ) | wd( 3, 34567 ) | wd( 2, 34567 );
-	sout | wd( 4, 3456. ) | wd( 3, 3456. ) | wd( 2, 3456. );
-	sout | wd( 4, "abcde" ) | wd( 3, "abcde" ) | wd( 2,"abcde" );
-	sout | wd(4,3, 34) | wd(8,4, 34) | wd(10,10, 34);
-	sout | wd( 4,1, 3456 ) | wd( 8,2, 3456 ) | wd( 10,3, 3456 );
-	sout | wd( 4,0, 0 ) | wd( 3,10, 34 );
-	sout | wd(6,3, 27.5) | wd(8,1, 27.5) | wd(8,0, 27.5) | wd(3,8, 27.5);
-	sout | wd(6,3, 27.0) | wd(6,3, 27.5) | wd(8,1, 27.5) | wd(8,0, 27.5) | wd(3,8, 27.5);
-	sout | left(wd(4,27)) | left(wd(10,27.)) | left(wd(10,27.5)) | left(wd(4,3,27)) | left(wd(10,3,27.5));
-	sout | ws(6,6, 234.567) | ws(6,5, 234.567) | ws(6,4, 234.567) | ws(6,3, 234.567);
-	sout | ws(6,6, 234567.) | ws(6,5, 234567.) | ws(6,4, 234567.) | ws(6,3, 234567.);
-	sout | ws(3,6, 234567.) | ws(4,6, 234567.) | ws(5,6, 234567.) | ws(6,6, 234567.);
-	sout | wd(6, "abcd") | wd(8, "abcd") | wd(2, "abcd");
-	sout | wd(6,8, "abcd") | wd(6,8, "abcdefghijk") | wd(6,3, "abcd");
-    sout | pad0(wd(4,27)) | pad0(wd(4,3,27)) | pad0(wd(8,3,27.5));
-
-//	sexit | 3 | 4;
-}
-
-// Local Variables: //
-// tab-width: 4 //
-// compile-command: "cfa -Wall -Wextra amanipulatorsOutput2.cfa" //
-// End: //
