@Test
public void testNoUnwrapWithDeclClash() throws Exception {

  final String program = "void main() { int x; { { int x; } x = 2; } }";
  final String expected = "void main() { int x; { int x; } x = 2; }";
  final TranslationUnit tu = ParseHelper.parse(program);
  List<UnwrapReductionOpportunity> ops = UnwrapReductionOpportunities
      .findOpportunities(MakeShaderJobFromFragmentShader.make(tu),
      new ReducerContext(false,
          ShadingLanguageVersion.GLSL_440, new SameValueRandom(false, 0),
          new IdGenerator()));
  // The inner block cannot be unwrapped as it would change which variable 'x = 2' refers to.
  assertEquals(1, ops.size());
}