anchor.diff:    /// If the token is a TypeDef, it will be created directly; otherwise it will
     /// be retrieved by finding the scope that it comes from and returning a
     /// typedef from the new scope.
  -  factory WinmdType.fromToken(IMetaDataImport2? reader, int token) {
  +  factory WinmdType.fromToken(IMetaDataImport2 reader, int token) {
       if (tokenIsTypeRef(token)) {
  -      try {
  -        return WinmdType.fromTypeRef(reader, token);
  -      } on WinmdException {
  -        return null!;
  -      }
  +      return WinmdType.fromTypeRef(reader, token);
       } else if (tokenIsTypeDef(token)) {
  -      return WinmdType.fromTypeDef(reader!, token);
  +      return WinmdType.fromTypeDef(reader, token);
       } else {
         print('Unrecognized token $token');
  -      return WinmdType(reader!);
  +      return WinmdType(reader);
       }
     }
   
  
positive.code:     // a token like IInspectable is out of reach of GetTypeRefProps, since it is
      // a plain COM object. These objects are returned as system types.
      if (systemTokens.containsKey(typeRefToken)) {
        return WinmdType(reader!, 0, systemTokens[typeRefToken]);
      }
  
      try {
        final hr = reader!.GetTypeRefProps(
            typeRefToken, ptkResolutionScope, szName, 256, pchName);
  
        if (SUCCEEDED(hr)) {
  
negative.code:   late IMetaDataImport2 reader;
  
    int token;
    late String typeName;
    int flags;
    int baseTypeToken;
  
  