anchor.diff:      ForEachPartsWithDeclaration forLoopParts = forStatement.forLoopParts;
       expect(forLoopParts.loopVariable, isNotNull);
       expect(forLoopParts.loopVariable.metadata, hasLength(1));
  -    expect(forLoopParts.inKeyword, isNotNull);
  -    expect(forLoopParts.iterable, isNotNull);
  -    expect(forStatement.rightParenthesis, isNotNull);
  -    expect(forStatement.body, isNotNull);
  -  }
  -
  -  void test_parseForStatement_each_finalRequired() {
  -    ForStatement forStatement = parseStatement(
  -      'for (final required in list) {}',
  -      featureSet: controlFlow,
  -    );
  -    assertNoErrors();
  -    expect(forStatement.awaitKeyword, isNull);
  -    expect(forStatement.forKeyword, isNotNull);
  -    expect(forStatement.leftParenthesis, isNotNull);
  -    ForEachPartsWithDeclaration forLoopParts = forStatement.forLoopParts;
  -    expect(forLoopParts.loopVariable.identifier.name, 'required');
  -    expect(forLoopParts.inKeyword, isNotNull);
  -    expect(forLoopParts.iterable, isNotNull);
  -    expect(forStatement.rightParenthesis, isNotNull);
  -    expect(forStatement.body, isNotNull);
  -  }
  -
  -  void test_parseForStatement_each_finalExternal() {
  -    ForStatement forStatement = parseStatement(
  -      'for (final external in list) {}',
  -      featureSet: controlFlow,
  -    );
  -    assertNoErrors();
  -    expect(forStatement.awaitKeyword, isNull);
  -    expect(forStatement.forKeyword, isNotNull);
  -    expect(forStatement.leftParenthesis, isNotNull);
  -    ForEachPartsWithDeclaration forLoopParts = forStatement.forLoopParts;
  -    expect(forLoopParts.loopVariable.identifier.name, 'external');
       expect(forLoopParts.inKeyword, isNotNull);
       expect(forLoopParts.iterable, isNotNull);
       expect(forStatement.rightParenthesis, isNotNull);
  
positive.code:     expect(thenExpression, isParenthesizedExpression);
      Expression elseExpression = expression.elseExpression;
      expect(elseExpression, isSimpleIdentifier);
    }
  
    void test_nullCheck() {
  
negative.code:     expect(forStatement.body, isNotNull);
    }
  
    void test_parseForStatement_each_finalExternal() {
      ForStatement forStatement = parseStatement(
        'for (final external in list) {}',
        featureSet: controlFlow,
      );
      assertNoErrors();
      expect(forStatement.awaitKeyword, isNull);
      expect(forStatement.forKeyword, isNotNull);
      expect(forStatement.leftParenthesis, isNotNull);
      ForEachPartsWithDeclaration forLoopParts = forStatement.forLoopParts;
      expect(forLoopParts.loopVariable.identifier.name, 'external');
      expect(forLoopParts.inKeyword, isNotNull);
      expect(forLoopParts.iterable, isNotNull);
      expect(forStatement.rightParenthesis, isNotNull);
      expect(forStatement.body, isNotNull);
    }
  
    void test_parseForStatement_each_finalRequired() {
      ForStatement forStatement = parseStatement(
        'for (final required in list) {}',
        featureSet: controlFlow,
      );
      assertNoErrors();
      expect(forStatement.awaitKeyword, isNull);
      expect(forStatement.forKeyword, isNotNull);
      expect(forStatement.leftParenthesis, isNotNull);
      ForEachPartsWithDeclaration forLoopParts = forStatement.forLoopParts;
      expect(forLoopParts.loopVariable.identifier.name, 'required');
      expect(forLoopParts.inKeyword, isNotNull);
      expect(forLoopParts.iterable, isNotNull);
      expect(forStatement.rightParenthesis, isNotNull);
      expect(forStatement.body, isNotNull);
    }
  
    void test_parseForStatement_each_genericFunctionType2() {
      ForStatement forStatement = parseStatement(
        'for (void Function<T>(T) element in list) {}',
  