Index: src/GenPoly/Lvalue.cpp
===================================================================
--- src/GenPoly/Lvalue.cpp	(revision 59c8dff49bbb5284b39ab27da894a644327a531a)
+++ src/GenPoly/Lvalue.cpp	(revision c75b30ae4d3f97678f27275a033614f675b7fdaf)
@@ -133,4 +133,18 @@
 			return func->linkage == ast::Linkage::Intrinsic
 				&& lvalueFunctions.count( func->name );
+		}
+	}
+	return false;
+}
+
+bool isGeneratedInstrinct( ast::Expr const * expr ) {
+	if ( auto app = dynamic_cast<ast::ApplicationExpr const *>( expr ) ) {
+		if ( app->args.size() == 2 && ast::getFunction( app )->name == "?[?]" ) {
+			auto param_1 = dynamic_cast<ast::VariableExpr const *>(app->args.front().get());
+			if ( param_1 ) {
+				auto param_1_as_obj = param_1->var.as<ast::ObjectDecl>();
+				return ( param_1_as_obj->name.find( "values_") != std::string::npos
+					||  param_1_as_obj->name.find( "labels_" ) != std::string::npos );
+			}
 		}
 	}
@@ -161,5 +175,6 @@
 ast::Expr const * FixIntrinsicResults::postvisit(
 		ast::ApplicationExpr const * expr ) {
-	if ( skip == SkipInProgress || !isIntrinsicReference( expr ) ) {
+
+	if ( skip == SkipInProgress || !isIntrinsicReference( expr ) || isGeneratedInstrinct( expr ) ) {
 		return expr;
 	}
