anchor.diff:      visitSubexpression(propertyAccess, 'int');
     }
   
  +  Future<void> test_propertyAccess_extensionMember_allowsNull_explicit() async {
  +    await analyze('''
  +class C {}
  +extension E on C/*?*/ {
  +  int get foo => 0;
  +}
  +f(C/*?*/ Function() g) => E(g()).foo;
  +''');
  +    var propertyAccess = findNode.propertyAccess('E(g()).foo');
  +    visitSubexpression(propertyAccess, 'int');
  +  }
  +
     Future<void> test_propertyAccess_extensionMember_disallowsNull() async {
       await analyze('''
   class C {}
  
positive.code:     var binaryExpression = findNode.binary('c + c');
      visitSubexpression(binaryExpression, 'void',
          changes: {binaryExpression.leftOperand: isNullCheck});
    }
  
    Future<void> test_binaryExpression_question_question() async {
  
negative.code:     visitSubexpression(methodInvocation, 'void');
    }
  
    Future<void>
        test_methodInvocation_extensionMember_allowsNull_explicit() async {
      await analyze('''
  class C {}
  extension E on C/*?*/ {
    void foo() {}
  }
  f(C/*?*/ c) => E(c).foo();
  ''');
      var methodInvocation = findNode.methodInvocation('E(c).foo');
      visitSubexpression(methodInvocation, 'void');
    }
  
    Future<void> test_methodInvocation_extensionMember_disallowsNull() async {
      await analyze('''
  class C {}
  