Index: src/GenPoly/Box.cc
===================================================================
--- src/GenPoly/Box.cc	(revision de91427b324e52a4106e0ad80e07b006f2292087)
+++ src/GenPoly/Box.cc	(revision 1cced2816c1a5a6e545b33c42c2e4ce165024ef1)
@@ -412,7 +412,5 @@
 		void Pass1::boxParam( Type *param, Expression *&arg, const TyVarMap &exprTyVars ) {
 			assert( ! arg->get_results().empty() );
-//   if ( ! dynamic_cast< PointerType *>( arg->get_results().front() ) ) {
-			TypeInstType *typeInst = dynamic_cast< TypeInstType *>( param );
-			if ( typeInst && exprTyVars.find( typeInst->get_name() ) != exprTyVars.end() ) {
+			if ( isPolyType( param, exprTyVars ) ) {
 				if ( dynamic_cast< TypeInstType *>( arg->get_results().front() ) ) {
 					// if the argument's type is a type parameter, we don't need to box again!
@@ -432,5 +430,4 @@
 				} // if
 			} // if
-//   }
 		}
 
