Index: src/ResolvExpr/Resolver.cc
===================================================================
--- src/ResolvExpr/Resolver.cc	(revision 41e16b1592d7e5dd5bb62b8283d0d6eef4ccce5a)
+++ src/ResolvExpr/Resolver.cc	(revision 2a08c25c618270f348ec1459f3f4454a930fabd3)
@@ -207,5 +207,5 @@
 			Alternative & choice = winners.front();
 			if ( findDeletedExpr( choice.expr ) ) {
-				SemanticError( choice.expr, "Unique best alternative includes deleted identifier in " );
+				SemanticError( untyped->location, choice.expr, "Unique best alternative includes deleted identifier in " );
 			}
 			alt = std::move( choice );
@@ -242,4 +242,5 @@
 
 		static CastExpr untyped( nullptr ); // cast to void
+		untyped.location = expr->location;
 
 		// set up and resolve expression cast to void
@@ -274,5 +275,8 @@
 	void findSingleExpression( Expression *& untyped, Type * type, const SymTab::Indexer & indexer ) {
 		assert( untyped && type );
+		// transfer location to generated cast for error purposes
+		CodeLocation location = untyped->location;
 		untyped = new CastExpr( untyped, type );
+		untyped->location = location;
 		findSingleExpression( untyped, indexer );
 		removeExtraneousCast( untyped, indexer );
