anchor.diff:                                match tcref.TypeOrMeasureKind with TyparKind.Measure -> error(Error(FSComp.SR.tcMeasureDeclarationsRequireStaticMembers(), m)) | _ -> ()
   
                                 // PassA: make incrClassCtorLhs - ctorv, thisVal etc, type depends on argty(s) 
  -                              let incrClassCtorLhs = TcImplictCtorLhsPassA(cenv,env,tpenv,tcref,vis,attrs,spats,thisIdOpt,baseValOpt,safeInitInfo,m,copyOfTyconTypars,objTy,thisTy)
  +                              let incrClassCtorLhs = TcImplictCtorLhsPassA(cenv,envForTycon,tpenv,tcref,vis,attrs,spats,thisIdOpt,baseValOpt,safeInitInfo,m,copyOfTyconTypars,objTy,thisTy)
                                 // PassA: Add copyOfTyconTypars from incrClassCtorLhs - or from tcref 
  -                              let env = AddDeclaredTypars CheckForDuplicateTypars incrClassCtorLhs.InstanceCtorDeclaredTypars env
  -                              let innerState = (Some incrClassCtorLhs, env, tpenv, recBindIdx, uncheckedBindsRev)
  +                              let envForTycon = AddDeclaredTypars CheckForDuplicateTypars incrClassCtorLhs.InstanceCtorDeclaredTypars envForTycon
  +                              let innerState = (Some incrClassCtorLhs, envForTycon, tpenv, recBindIdx, uncheckedBindsRev)
   
                                 [PassAIncrClassCtor incrClassCtorLhs],innerState
                                 
  
positive.code:                                       | _ -> ()
                                let rbind = NormalizedRecBindingDefn(containerInfo,newslotsOK,declKind,bind)
                                let overridesOK  = DeclKind.CanOverrideOrImplement(declKind)
                                let (binds,_values),(tpenv,recBindIdx) = AnalyzeAndMakeAndPublishRecursiveValue overridesOK false cenv env (tpenv,recBindIdx) rbind
                                let cbinds = [ for rbind in binds -> PassAMember rbind ]
  
                                let innerState = (incrClassCtorLhsOpt, env, tpenv, recBindIdx, List.rev binds @ uncheckedBindsRev)
                                cbinds,innerState
                          
  #if OPEN_IN_TYPE_DECLARATIONS
  
negative.code: 
                | MutRecShape.Tycon (TyconBindingsPassA(tyconOpt, declKind, _, tcref, copyOfTyconTypars, thisTy, defnAs)) ->
                  
                  let isExtrinsic = (declKind = ExtrinsicExtensionBinding)
                  let envForTycon = MakeInnerEnvForTyconRef cenv envForDecls tcref isExtrinsic 
                  let envForTycon = if isExtrinsic then envForTycon else AddLocalTyconRefs true cenv.g cenv.amap tcref.Range [tcref] envForTycon
                  // Set up the environment so use-before-definition warnings are given, at least 
                  // until we reach a PassAIncrClassCtorJustAfterSuperInit. 
                  let envForTycon = { envForTycon with eCtorInfo = Some (InitialImplicitCtorInfo())  }
  
                  let reqdThisValTyOpt = Some thisTy
                  
                  // Loop through the definition elements in a type...
  