anchor.diff:              emitStaticNonFinalFields(fragment.staticNonFinalFields),
          'operatorIsPrefix': js.string(namer.operatorIsPrefix),
          'callName': js.string(namer.callNameField),
  +       'argumentCount': js.string(namer.requiredParameterField),
  +       'defaultArgumentValues': js.string(namer.defaultValuesField),
          'eagerClasses': emitEagerClassInitializations(fragment.libraries),
          'invokeMain': fragment.invokeMain,
          'code': code};
  
positive.code:       proto[tearOffName] =
            tearOff(funs, reflectionInfo, false, name, isIntercepted);
      }
      if (descriptor[pos] != null) {
        f[#argCnt] = descriptor[pos];
        f[#defArgValues] = descriptor[pos + 1];
      }
    } else {
      proto[name] = descriptor;
  
negative.code:           // functions, reflectionInfo, isStatic, name, isIntercepted.
            holder[descriptor[2]] = 
                tearOff(funs, descriptor[3], true, name, false);
          }
          if (pos < descriptor.length) {
            fun[#argumentCount] = descriptor[pos];
            fun[#defaultArgumentValues] = descriptor[pos + 1];
          }
        }
  
  