anchor.diff:                      | rest -> rest
   
                   let prelimRecValues = [ for x in defnAs do match x with PassAMember bind -> yield bind.RecBindingInfo.Val | _ -> () ]
  -                let defnAs = MutRecShape.Tycon(TyconBindingsPassA(tyconOpt,prelimRecValues,tcref,copyOfTyconTypars,thisTy,defnAs))
  +                let defnAs = MutRecShape.Tycon(TyconBindingsPassA(tyconOpt,declKind,prelimRecValues,tcref,copyOfTyconTypars,thisTy,defnAs))
                   defnAs,(tpenv,recBindIdx,uncheckedBindsRev))
   
           let uncheckedRecBinds = List.rev uncheckedBindsRev
  
positive.code:             ||> MutRecShapes.extendEnvs (fun envCurrent decls -> 
                  let prelimRecValues =  
                      decls |> List.collect (function 
                          | MutRecShape.Tycon (TyconBindingsPassA(_,prelimRecValues,_,_,_,_)) -> prelimRecValues 
                          | MutRecShape.Lets binds -> [ for bind in binds -> bind.RecBindingInfo.Val ] 
                          | _ -> [])
                  let envInner = AddLocalVals cenv.tcSink scopem prelimRecValues envCurrent
  
negative.code:                     let ctorValueExprBindings = 
                          [ (let ctorValueExprBinding = TBind(incrClassCtorLhs.InstanceCtorVal,ctorBodyLambdaExpr,NoSequencePointAtStickyBinding)
                             let rbind = { ValScheme = incrClassCtorLhs.InstanceCtorValScheme ; Binding = ctorValueExprBinding }
                             FixupLetrecBind cenv envForDecls.DisplayEnv generalizedTyparsForRecursiveBlock rbind) ]
                          @ 
                          ( match cctorBodyLambdaExprOpt with 
                            | None -> []
  