anchor.diff:            m() => super.a += 42;
           }
           ''',
  -        const Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_COMPOUND,
  -            getter: 'field(B#a)', setter: 'field(A#a)',
  -            operator: '+=', rhs: '42')),*/
  +        // TODO(johnniwinther): Change this to
  +        // [VISIT_SUPER_FIELD_FIELD_COMPOUND] when dart2js supports shadow
  +        // setters.
  +        const Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_COMPOUND,
  +            element: 'field(B#a)',
  +            operator: '+=', rhs: '42')),
       const Test.clazz(
           '''
           class B {
  
positive.code:           m() => super.a ??= 42;
          }
          ''',
          const Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_SET_IF_NULL,
              getter: 'field(B#a)', setter: 'field(A#a)',
              rhs: '42')),*/
      const Test.clazz(
          '''
          class B {
  
negative.code:         const Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_SET_IF_NULL,
              getter: 'field(A#a)', setter: 'setter(B#a)',
              rhs: '42')),
      const Test.clazz(
          '''
          class A {
            var a;
  