anchor.diff:              // The compiler optimizer is aware of this function  (see use of generic_equality_per_inner_vref in opt.fs)
               // and devirtualizes calls to it based on "T".
               let GenericEqualityIntrinsic (x : 'T) (y : 'T) : bool = 
  -                match GenericSpecializeEqualsWithRelation<PartialEquivalenceRelation,_>.Func with
  -                | null -> GenericEqualityObj false fsEqualityComparerNoHashingPER ((box x), (box y))
  -                | func -> func.Invoke (x, y)
  +                GenericSpecializeEqualsWithRelation<PartialEquivalenceRelation,_>.Func.Invoke (fsEqualityComparerNoHashingPER, x, y)
                   
               /// Implements generic equality between two values, with ER semantics for NaN (so equality on two NaN values returns true)
               //
  
positive.code:                   | _ -> 
                        x.GetHashCode()
  
  
              /// Fill in the implementation of CountLimitedHasherPER
              type CountLimitedHasherPER with
  
negative.code:                   | _ -> 
                       HashCombine 10 (x.GetLength(0)) (x.GetLength(1)) 
  
              // Core implementation of structural hashing, corresponds to pseudo-code in the 
              // F# Language spec.  Searches for the IStructuralHash interface, otherwise uses GetHashCode().
              // Arrays are structurally hashed through a separate technique.
  