anchor.diff:          let binds1,exnc = TcExnDefnCore cenv envInitial parent core
           let envMutRec =  AddLocalExnDefnAndReport cenv.tcSink scopem exnc (AddLocalTycons cenv.g cenv.amap scopem [exnc] envInitial)
   
  -        let defns = [MutRecShape.Tycon(MutRecDefnsPhase2DataForTycon(Some exnc, parent, ModuleOrMemberBinding, (mkLocalEntityRef exnc), None, NoSafeInitInfo, [], aug, m, NoNewSlots))]
  +        let defns = [MutRecShape.Tycon(MutRecDefnsPhase2DataForTycon(Some exnc, parent, ModuleOrMemberBinding, mkLocalEntityRef exnc, None, NoSafeInitInfo, [], aug, m, NoNewSlots))]
           let binds2,envFinal = TcMutRecDefns_Phase2 cenv envInitial m scopem (envMutRec, defns)
           let binds2flat = binds2 |> MutRecShapes.collectTycons |> List.map snd |> List.concat
           // Augment types with references to values that implement the pre-baked semantics of the type
  
positive.code:        [MutRecShape.Lets (List.concat preBinds)] @ 
         (xs |> List.map (fun elem -> 
             match elem with 
             | MutRecShape.Module ((c,env2),d) -> MutRecShape.Module ((c,env2), expandTycons f1 env2 d)
             | _ -> elem)) @
         [MutRecShape.Lets (List.concat postBinds)] 
  
  
negative.code:         // Augmentations of type definitions are allowed within the same file as long as no new type representation or abbreviation is given 
          CheckForDuplicateConcreteType env id.idText id.idRange
          CheckForDuplicateModule env id.idText id.idRange
          let vis,cpath = ComputeAccessAndCompPath env None id.idRange synVis parent
  
          // Establish the visibility of the representation, e.g.
          //   type R = 
          //      private { f:int }
          //      member x.P = x.f + x.f
          let synVisOfRepr = 
              match synTyconRepr with 
              | SynTypeDefnSimpleRepr.None _ -> None
              | SynTypeDefnSimpleRepr.TypeAbbrev _ -> None
  