anchor.diff:                                  match c.Initializer with
                                   | Some (CodeReader.BaseInitializer (bTyp, bCtor, args, reorder)) ->
                                       CombineStatements [
  -                                        ExprStatement (BaseCtor(This, bTyp, bCtor, args) |> reorder)
  +                                        ExprStatement (baseCtor This bTyp bCtor args |> reorder)
                                           c.Body
                                       ]
                                   | Some (CodeReader.ThisInitializer (bCtor, args, reorder)) ->
                                       CombineStatements [
  -                                        ExprStatement (BaseCtor(This, NonGeneric def, bCtor, args) |> reorder)
  +                                        ExprStatement (baseCtor This (NonGeneric def) bCtor args |> reorder)
                                           c.Body
                                       ]
                                   | None -> c.Body
  
positive.code: 
  let TextSpans = R.textSpans
  let SaveTextSpans() = R.saveTextSpans <- true
  
  let private transformClass (rcomp: CSharpCompilation) (sr: R.SymbolReader) (comp: Compilation) (annot: A.TypeAnnotation) (cls: INamedTypeSymbol) =
      let isStruct = cls.TypeKind = TypeKind.Struct
  
negative.code:                                 | { Entity = td } when td = Definitions.Obj || td = Definitions.ValueType ->
                                      Empty
                                  | b ->
                                      ExprStatement (baseCtor This b (ConstructorInfo.Default()) [])
                              let init =
                                  if hasInit then 
                                      ExprStatement <| Call(Some This, NonGeneric def, NonGeneric initDef, [])
  