Index: src/ResolvExpr/CandidateFinder.cpp
===================================================================
--- src/ResolvExpr/CandidateFinder.cpp	(revision c1ed2eed49812bcfa4987e47ccc9eda7d2fbf8c0)
+++ src/ResolvExpr/CandidateFinder.cpp	(revision 18e683be9f9f150b044bdcfc96461f948a613ef9)
@@ -1003,5 +1003,5 @@
 			assert( toType );
 			toType = resolveTypeof( toType, symtab );
-			toType = SymTab::validateType( toType, symtab );
+			toType = SymTab::validateType( castExpr->location, toType, symtab );
 			toType = adjustExprType( toType, tenv, symtab );
 
@@ -1410,5 +1410,5 @@
 				// calculate target type
 				const ast::Type * toType = resolveTypeof( initAlt.type, symtab );
-				toType = SymTab::validateType( toType, symtab );
+				toType = SymTab::validateType( initExpr->location, toType, symtab );
 				toType = adjustExprType( toType, tenv, symtab );
 				// The call to find must occur inside this loop, otherwise polymorphic return 
Index: src/ResolvExpr/Resolver.cc
===================================================================
--- src/ResolvExpr/Resolver.cc	(revision c1ed2eed49812bcfa4987e47ccc9eda7d2fbf8c0)
+++ src/ResolvExpr/Resolver.cc	(revision 18e683be9f9f150b044bdcfc96461f948a613ef9)
@@ -1154,7 +1154,6 @@
 			return findKindExpression( untyped, symtab );
 		}
-
-		/// Resolve `untyped` to the single expression whose candidate is the best match for the 
-		/// given type.
+	} // anonymous namespace
+
 		ast::ptr< ast::Expr > findSingleExpression(
 			const ast::Expr * untyped, const ast::Type * type, const ast::SymbolTable & symtab
@@ -1167,4 +1166,5 @@
 		}
 
+	namespace {
 		/// Predicate for "Candidate has integral type"
 		bool hasIntegralType( const Candidate & i ) {
Index: src/ResolvExpr/Resolver.h
===================================================================
--- src/ResolvExpr/Resolver.h	(revision c1ed2eed49812bcfa4987e47ccc9eda7d2fbf8c0)
+++ src/ResolvExpr/Resolver.h	(revision 18e683be9f9f150b044bdcfc96461f948a613ef9)
@@ -35,4 +35,5 @@
 	class StmtExpr;
 	class SymbolTable;
+	class Type;
 	class TypeEnvironment;
 } // namespace ast
@@ -61,4 +62,8 @@
 	ast::ptr< ast::Expr > resolveInVoidContext(
 		const ast::Expr * expr, const ast::SymbolTable & symtab, ast::TypeEnvironment & env );
+	/// Resolve `untyped` to the single expression whose candidate is the best match for the 
+	/// given type.
+	ast::ptr< ast::Expr > findSingleExpression(
+		const ast::Expr * untyped, const ast::Type * type, const ast::SymbolTable & symtab );
 	/// Resolves a constructor init expression
 	ast::ptr< ast::Init > resolveCtorInit( 
