Index: src/GenPoly/Box.cc
===================================================================
--- src/GenPoly/Box.cc	(revision d978ada7bb8f8a45b1fa33ff5bdccc7e6e466c3e)
+++ src/GenPoly/Box.cc	(revision 72514aabb84d78dd4e6a6c660bedd1defcff9338)
@@ -798,6 +798,6 @@
 			for ( Type::ForallList::iterator tyVar = functionType->get_forall().begin(); tyVar != functionType->get_forall().end(); ++tyVar ) {
 				for ( std::list< DeclarationWithType *>::iterator assert = (*tyVar)->assertions.begin(); assert != (*tyVar)->assertions.end(); ++assert ) {
-					InferredParams::const_iterator inferParam = appExpr->get_inferParams().find( (*assert)->get_uniqueId() );
-					assertf( inferParam != appExpr->get_inferParams().end(), "addInferredParams missing inferred parameter: %s in: %s", toString( *assert ).c_str(), toString( appExpr ).c_str() );
+					InferredParams::const_iterator inferParam = appExpr->inferParams.find( (*assert)->get_uniqueId() );
+					assertf( inferParam != appExpr->inferParams.end(), "addInferredParams missing inferred parameter: %s in: %s", toString( *assert ).c_str(), toString( appExpr ).c_str() );
 					Expression *newExpr = inferParam->second.expr->clone();
 					addCast( newExpr, (*assert)->get_type(), tyVars );
Index: src/GenPoly/Specialize.cc
===================================================================
--- src/GenPoly/Specialize.cc	(revision d978ada7bb8f8a45b1fa33ff5bdccc7e6e466c3e)
+++ src/GenPoly/Specialize.cc	(revision 72514aabb84d78dd4e6a6c660bedd1defcff9338)
@@ -245,5 +245,5 @@
 		appExpr->env = TypeSubstitution::newFromExpr( appExpr, env );
 		if ( inferParams ) {
-			appExpr->get_inferParams() = *inferParams;
+			appExpr->inferParams = *inferParams;
 		} // if
 
@@ -284,5 +284,5 @@
 		std::list< Expression* >::iterator actual;
 		for ( formal = function->get_parameters().begin(), actual = appExpr->get_args().begin(); formal != function->get_parameters().end() && actual != appExpr->get_args().end(); ++formal, ++actual ) {
-			*actual = doSpecialization( (*formal)->get_type(), *actual, &appExpr->get_inferParams() );
+			*actual = doSpecialization( (*formal)->get_type(), *actual, &appExpr->inferParams );
 		}
 	}
@@ -295,6 +295,6 @@
 			// alternatively, if order starts to matter then copy appExpr's inferParams and pass them to handleExplicitParams.
 			handleExplicitParams( appExpr );
-			for ( InferredParams::iterator inferParam = appExpr->get_inferParams().begin(); inferParam != appExpr->get_inferParams().end(); ++inferParam ) {
-				inferParam->second.expr = doSpecialization( inferParam->second.formalType, inferParam->second.expr, inferParam->second.inferParams.get() );
+			for ( InferredParams::iterator inferParam = appExpr->inferParams.begin(); inferParam != appExpr->inferParams.end(); ++inferParam ) {
+				inferParam->second.expr = doSpecialization( inferParam->second.formalType, inferParam->second.expr, &inferParam->second.expr->inferParams );
 			}
 		}
