Index: src/tests/abs.c
===================================================================
--- src/tests/abs.c	(revision 1e37d4dba6b5ea6779ee45ac66989cefd076fb23)
+++ src/tests/abs.c	(revision 1e37d4dba6b5ea6779ee45ac66989cefd076fb23)
@@ -0,0 +1,36 @@
+//
+// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
+//
+// The contents of this file are covered under the licence agreement in the
+// file "LICENCE" distributed with Cforall.
+//
+// abs.c -- 
+//
+// Author           : Peter A. Buhr
+// Created On       : Thu Jan 28 18:26:16 2016
+// Last Modified By : Peter A. Buhr
+// Last Modified On : Wed Mar  2 15:07:26 2016
+// Update Count     : 51
+//
+
+#include <fstream>
+#include <stdlib>										// abs
+
+int main( void ) {
+	char ch = -65;
+	sout | "char\t\t\t"					| ch     | "\tabs " | abs( ch ) | endl;
+	sout | "signed int\t\t"				| -65    | "\tabs" | abs( -65 ) | endl;
+	sout | "signed long int\t\t" 		| -65l   | "\tabs" | abs( -65l ) | endl;
+	sout | "signed long long int\t"		| -65ll  | "\tabs" | abs( -65ll ) | endl;
+	sout | "float\t\t\t" 				| -65.0f | "\tabs" | abs( -65.0f ) | endl;
+	sout | "double\t\t\t"				| -65.0  | "\tabs" | abs( -65.0 ) | endl;
+	sout | "long double\t\t"			| -65.0l | "\tabs" | abs( -65.0l ) | endl;
+	sout | "float _Complex\t\t"			| -65.0F-2.0iF | "\tabs" | abs( -65.0F-2.0iF ) | endl;
+	sout | "double _Complex\t\t"		| -65.0D-2.0iD | "\tabs" | abs( -65.0D-2.0iD ) | endl;
+	sout | "long double _Complex\t"		| -65.0L-2.0iL | "\tabs" | abs( -65.0L-2.0iL ) | endl;
+} // main
+
+// Local Variables: //
+// tab-width: 4 //
+// compile-command: "cfa abs.c" //
+// End: //
Index: src/tests/ato.c
===================================================================
--- src/tests/ato.c	(revision 1e37d4dba6b5ea6779ee45ac66989cefd076fb23)
+++ src/tests/ato.c	(revision 1e37d4dba6b5ea6779ee45ac66989cefd076fb23)
@@ -0,0 +1,56 @@
+//                               -*- Mode: C -*- 
+// 
+// Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
+//
+// The contents of this file are covered under the licence agreement in the
+// file "LICENCE" distributed with Cforall.
+// 
+// ato.c -- 
+// 
+// Author           : Peter A. Buhr
+// Created On       : Thu Feb  4 08:10:57 2016
+// Last Modified By : Peter A. Buhr
+// Last Modified On : Mon Feb 29 17:57:35 2016
+// Update Count     : 44
+// 
+
+#include <fstream>
+#include <stdlib>										// ato, strto
+extern "C" {
+#include <stdio.h>
+#include <float.h>
+}
+
+int main( void ) {
+	int i = ato( "-123" );
+	sout | i | "-123" | endl;
+	unsigned int ui = ato( "123" );
+	sout | ui | "123" | endl;
+	long int li = ato( "-123" );
+	sout | li | "-123" | endl;
+	unsigned long int uli = ato( "123" );
+	sout | uli | "123" | endl;
+	long long int lli = ato( "-123" );
+	sout | lli | "-123" | endl;
+	unsigned long long int ulli = ato( "123" );
+	sout | ulli | "123" | endl;
+	float f = ato( "-123.456" );
+	sout | f | "-123.456" | endl;
+	double d = ato( "-123.4567890123456" );
+	sout | d | "-123.4567890123456" | endl;
+	long double ld = ato( "-123.45678901234567890123456789" );
+	sout | ld | "-123.45678901234567890123456789" | endl;
+	float _Complex fc = ato( "-123.456-123.456i" );
+	sout | fc | "-123.456-123.456i" | endl;
+	double _Complex dc = ato( "-123.4567890123456+123.4567890123456i" );
+	sout | dc | "-123.4567890123456+123.4567890123456i" | endl;
+	long double _Complex ldc = ato( "123.45678901234567890123456789-123.45678901234567890123456789i" );
+	sout | ldc | "123.45678901234567890123456789-123.45678901234567890123456789i" | endl;
+	long double _Complex ldc2 = ato( "123.45678901234-123.4567890i" );
+	sout | ldc2 | "123.45678901234-123.4567890i" | endl;
+} // main
+
+// Local Variables: //
+// tab-width: 4 //
+// compile-command: "cfa ato.c" //
+// End: //
Index: src/tests/runTests.sh
===================================================================
--- src/tests/runTests.sh	(revision 1e37d4dba6b5ea6779ee45ac66989cefd076fb23)
+++ src/tests/runTests.sh	(revision 1e37d4dba6b5ea6779ee45ac66989cefd076fb23)
@@ -0,0 +1,65 @@
+#!/bin/bash
+
+##############################################################################
+#
+# Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
+#
+# The contents of this file are covered under the licence agreement in the
+# file "LICENCE" distributed with Cforall.
+#
+# Runs integration tests for cfa-cc.
+#
+# Output of test run will be copied into $logfile (default: tests/log.txt).
+# Build failures for tests will be placed in tests/$test.make.txt, incorrect
+# output in tests/$test.run.txt.
+#
+# Author           : Aaron B. Moss
+# Created On       : Mon Nov 23 14:19:00 2015
+# Last Modified By : Aaron B. Moss
+# Last Modified On : Mon Nov 23 14:19:00 2015
+# Update Count     : 1
+#
+##############################################################################
+
+# list of tests to run;
+# Should be a make target for each test that generates an executable in the
+# current directory named the same; should also be an input file
+# tests/$test.in.txt and expected output tests/$test.out.txt
+tests="vector_test avl_test"
+
+# log file for test output;
+# reset at the beginning of each run
+logfile=tests/log.txt
+touch $logfile && rm $logfile
+
+# clean existing build artifacts before run
+make clean > /dev/null 2>&1
+
+ret_val=0
+
+for test in $tests; do
+	echo -n "    $test" | tee -a $logfile
+
+	# build, skipping to next test on error
+	if ! make -j 8 $test > tests/$test.make.txt 2>&1; then
+		ret_val=1
+		echo -e "\tFAILED with build error:" | tee -a $logfile
+		cat tests/$test.make.txt | tee -a $logfile
+		continue
+	fi
+	rm tests/$test.make.txt
+
+	# run, testing against expected output
+	./$test < tests/$test.in.txt > tests/$test.run.txt 2>&1
+	if ! diff tests/$test.out.txt tests/$test.run.txt > tests/$test.diff.txt; then
+		ret_val=1
+		echo -e "\tFAILED with output mismatch:" | tee -a $logfile
+		cat tests/$test.diff.txt | tee -a $logfile
+		continue
+	fi
+	rm tests/$test.run.txt tests/$test.diff.txt ./$test
+
+	echo -e "\tPASSED" | tee -a $logfile
+done
+
+exit $((ret_val))
Index: src/tests/vector_test.c
===================================================================
--- src/tests/vector_test.c	(revision 1e37d4dba6b5ea6779ee45ac66989cefd076fb23)
+++ src/tests/vector_test.c	(revision 1e37d4dba6b5ea6779ee45ac66989cefd076fb23)
@@ -0,0 +1,47 @@
+//
+// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
+//
+// The contents of this file are covered under the licence agreement in the
+// file "LICENCE" distributed with Cforall.
+//
+// vector_test.c --
+//
+// Author           : Richard C. Bilson
+// Created On       : Wed May 27 17:56:53 2015
+// Last Modified By : Rob Schluntz
+// Last Modified On : Wed Apr 27 17:31:27 2016
+// Update Count     : 18
+//
+
+#include <fstream>
+#include <iterator>
+#include "vector_int.h"
+#include "array.h"
+
+int main( void ) {
+	vector_int vec;
+
+	// read in numbers until EOF or error
+	int num;
+
+	sout | "enter N elements and C-d on a separate line:" | endl;
+	for ( ;; ) {
+		sin | &num;
+	  if ( fail( sin ) || eof( sin ) ) break;
+		append( &vec, num );
+	}
+	// write out the numbers
+
+	sout | "Array elements:" | endl;
+	write( begin( &vec ), end( &vec ), sout );
+	sout | endl;
+
+	sout | "Array elements reversed:" | endl;
+	write_reverse( begin( &vec ), end( &vec ), sout );
+	sout | endl;
+}
+
+// Local Variables: //
+// tab-width: 4 //
+// compile-command: "cfa vector_test.c vector_int.o array.o" //
+// End: //
