@Test
public void testRemoveLoopLimiter2() throws Exception {

  TranslationUnit tu = ParseHelper.parse(""
      + "void main() {\n"
      + "  int GLF_live3_looplimiter0 = 0;\n"
      + "  for(\n"
      + "      float GLF_live3sphereNo = 0.0;\n"
      + "      GLF_live3sphereNo < 10.0;\n"
      + "      GLF_live3sphereNo ++\n"
      + "  )\n"
      + "   {\n"
      + "    if(GLF_live3_looplimiter0 >= 5)\n"
      + "     {\n"
      + "      break;\n"
      + "     }\n"
      + "    GLF_live3_looplimiter0 ++;\n"
      + "  }\n"
      + "}\n");
  while (true) {
    List<IReductionOpportunity> ops = ReductionOpportunities
        .getReductionOpportunities(MakeShaderJobFromFragmentShader.make(tu),
        new ReducerContext(false,
            ShadingLanguageVersion.GLSL_440, new RandomWrapper(0), new IdGenerator()), fileOps);
    if (ops.isEmpty()) {
      break;
    }
    ops.get(0).applyReduction();
  }
  final String expected = ""
      + "void main() {\n"
      + "}\n";
  CompareAsts.assertEqualAsts(expected, tu);
}