diff --git a/matlab/resid.m b/matlab/resid.m
index 63f37eb89b82094bc0ee8b415c3d4017f80d0c0e..d7fb56cf37f926232d57397388879cfc935fb054 100644
--- a/matlab/resid.m
+++ b/matlab/resid.m
@@ -65,7 +65,7 @@ if options_.block && ~options_.bytecode
                                      oo_.steady_state,...
                                      [oo_.exo_steady_state; ...
                             oo_.exo_det_steady_state], M_.params);
-        idx = M_.blocksEQU{i};
+        idx = M_.block_structure_stat.block(i).equation;
         z(idx) = r;
     end
 elseif options_.bytecode
@@ -117,4 +117,4 @@ if info(1)
 end
 
 
-oo_.steady_state = steady_state_old;
\ No newline at end of file
+oo_.steady_state = steady_state_old;
diff --git a/preprocessor/StaticModel.cc b/preprocessor/StaticModel.cc
index 57b13bea790282feeac6ad1a514549200c48b601..43bd8128ca86da25e9c0332ae6156e1bc0cd9f6f 100644
--- a/preprocessor/StaticModel.cc
+++ b/preprocessor/StaticModel.cc
@@ -1502,15 +1502,6 @@ StaticModel::writeOutput(ostream &output, bool block) const
 
       output << "];" << endl;
     }
-  output << "M_.blocksEQU = cell(" << nb_blocks << ", 1);" << endl;
-  for (int b = 0; b < (int) nb_blocks; b++)
-    {
-      unsigned int block_size = getBlockSize(b);
-      output << "M_.blocksEQU{" << b+1 << "} = [ ";
-      for (int i = 0; i < (int) block_size; i++)
-         output << getBlockEquationID(b, i)+1 << "; ";
-      output << "];" << endl;
-    }
   for (int b = 0; b < (int) nb_blocks; b++)
     {
       BlockSimulationType simulation_type = getBlockSimulationType(b);