Index: src/examples/ato.c
===================================================================
--- src/examples/ato.c	(revision 658f6de0ed93906e66453f048c3c4bfd269e58ce)
+++ src/examples/ato.c	(revision 658f6de0ed93906e66453f048c3c4bfd269e58ce)
@@ -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 : Wed Feb 17 11:44:03 2016
+// Update Count     : 42
+// 
+
+#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.45678901234567890123456789-123.45678901234567890123456789i" | endl;
+} // main
+
+// Local Variables: //
+// tab-width: 4 //
+// compile-command: "cfa ato.c" //
+// End: //
Index: src/examples/searchsort.c
===================================================================
--- src/examples/searchsort.c	(revision 658f6de0ed93906e66453f048c3c4bfd269e58ce)
+++ src/examples/searchsort.c	(revision 658f6de0ed93906e66453f048c3c4bfd269e58ce)
@@ -0,0 +1,82 @@
+//                               -*- Mode: C -*- 
+// 
+// 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.
+// 
+// searchsort.c -- 
+// 
+// Author           : Peter A. Buhr
+// Created On       : Thu Feb  4 18:17:50 2016
+// Last Modified By : Peter A. Buhr
+// Last Modified On : Wed Feb 17 12:21:04 2016
+// Update Count     : 46
+// 
+
+#include <fstream>
+#include <stdlib>										// bsearch, qsort
+
+int main( void ) {
+	const unsigned int size = 10;
+	int iarr[size];
+
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		iarr[i] = size - i;
+		sout | iarr[i] | ", ";
+	} // for
+	sout | endl;
+	qsort( iarr, size );
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		sout | iarr[i] | ", ";
+	} // for
+	sout | endl;
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		int *v = bsearch( size - i, iarr, size );
+		sout | *v | ", ";
+	} // for
+	sout | endl | endl;
+
+	double darr[size];
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		darr[i] = size - i + 0.5;
+		sout | darr[i] | ", ";
+	} // for
+	sout | endl;
+	qsort( darr, size );
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		sout | darr[i] | ", ";
+	} // for
+	sout | endl;
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		double *v = bsearch( size - i + 0.5, darr, size );
+		sout | *v | ", ";
+	} // for
+	sout | endl | endl;
+
+	struct S { int i, j; } sarr[size];
+	int ?<?( S t1, S t2 ) { return t1.i < t2.i && t1.j < t2.j; }
+	ofstream * ?|?( ofstream * os, S v ) { return os | v.i | ' ' | v.j; }
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		sarr[i].i = size - i;
+		sarr[i].j = size - i + 1;
+		sout | sarr[i] | ", ";
+	} // for
+	sout | endl;
+	qsort( sarr, size );
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		sout | sarr[i] | ", ";
+	} // for
+	sout | endl;
+	for ( unsigned int i = 0; i < size; i += 1 ) {
+		S temp = { size - i, size - i + 1 };
+		S *v = bsearch( temp, sarr, size );
+		sout | *v | ", ";
+	} // for
+	sout | endl | endl;
+} // main
+
+// Local Variables: //
+// tab-width: 4 //
+// compile-command: "cfa searchsort.c" //
+// End: //
