Index: src/ResolvExpr/Resolver.cc
===================================================================
--- src/ResolvExpr/Resolver.cc	(revision c14cff1813318f9616a9e814d9a8528eb9ddcbf9)
+++ src/ResolvExpr/Resolver.cc	(revision 071a31a897b52a4c1abdb6c4c2536e3bfe6257fb)
@@ -479,9 +479,16 @@
 		TypeEnvironment env;
 		AlternativeFinder finder( *this, env );
-		finder.find( ctorInit->get_ctor() );
-
-		if ( finder.get_alternatives().size() == 0 ) {
+		try {
+			finder.find( ctorInit->get_ctor() );
+		} catch ( SemanticError ) {
+			// no alternatives for the constructor initializer - fallback on C-style initializer
+			// xxx- not sure if this makes a ton of sense - should maybe never be able to have this situation?
 			fallbackInit( ctorInit );
-		} else if ( finder.get_alternatives().size() == 1 ) {
+			return;
+		}
+
+		assert( ! finder.get_alternatives().empty() );
+
+		if ( finder.get_alternatives().size() == 1 ) {
 			Alternative &choice = finder.get_alternatives().front();
 			if ( ApplicationExpr * appExpr = dynamic_cast< ApplicationExpr * >( choice.expr ) ) {
