anchor.diff:          member __.SetDeclaringType x = container <- TypeContainer.Type  x
   
           member __.IsErased
  -            with get() = (attributes &&& enum (int32 TypeProviderTypeAttributes.IsErased)) <> enum 0
  +            with get() = (attrs &&& enum (int32 TypeProviderTypeAttributes.IsErased)) <> enum 0
               and set v =
  -               if v then attributes <- attributes ||| enum (int32 TypeProviderTypeAttributes.IsErased)
  -               else attributes <- attributes &&& ~~~(enum (int32 TypeProviderTypeAttributes.IsErased))
  +               if v then attrs <- attrs ||| enum (int32 TypeProviderTypeAttributes.IsErased)
  +               else attrs <- attrs &&& ~~~(enum (int32 TypeProviderTypeAttributes.IsErased))
   
           member __.SuppressRelocation
  -            with get() = (attributes &&& enum (int32 TypeProviderTypeAttributes.SuppressRelocate)) <> enum 0
  +            with get() = (attrs &&& enum (int32 TypeProviderTypeAttributes.SuppressRelocate)) <> enum 0
               and set v =
  -               if v then attributes <- attributes ||| enum (int32 TypeProviderTypeAttributes.SuppressRelocate)
  -               else attributes <- attributes &&& ~~~(enum (int32 TypeProviderTypeAttributes.SuppressRelocate))
  +               if v then attrs <- attrs ||| enum (int32 TypeProviderTypeAttributes.SuppressRelocate)
  +               else attrs <- attrs &&& ~~~(enum (int32 TypeProviderTypeAttributes.SuppressRelocate))
   
   
           static member PatchUpAddedMemberInfo (this:Type) (m:MemberInfo) =
  
positive.code:             let isErased = defaultArg isErased true
              let nonNullable = defaultArg nonNullable false
              let hideObjectMethods = defaultArg hideObjectMethods false
              if not isErased && assembly.GetType().Name <> "ProvidedAssembly" then failwithf "a non-erased (i.e. generative) ProvidedTypeDefinition '%s.%s' was placed in an assembly '%s' that is not a ProvidedAssembly" namespaceName className (assembly.GetName().Name)
              ProvidedTypeDefinition(false, TypeContainer.Namespace (assembly,namespaceName), className, K baseType, defaultAttributes isErased, K None, [], None, None, K [| |], nonNullable, hideObjectMethods)
  
          new (className:string, baseType, ?hideObjectMethods, ?nonNullable, ?isErased) = 
              let isErased = defaultArg isErased true
              let nonNullable = defaultArg nonNullable false
              let hideObjectMethods = defaultArg hideObjectMethods false
              ProvidedTypeDefinition(false, TypeContainer.TypeToBeDecided, className, K baseType, defaultAttributes isErased, K None, [], None, None, K [| |], nonNullable, hideObjectMethods)
  
          // state ops
  
  
negative.code:                 :> IList<_>
  
  
      type ProvidedStaticParameter(isTgt: bool, parameterName:string, parameterType:Type, parameterDefaultValue:obj option, customAttributesData) =
          inherit ParameterInfo()
  
          let customAttributesImpl = CustomAttributesImpl(customAttributesData)
  
          new (parameterName:string, parameterType:Type, ?parameterDefaultValue:obj) = 
              ProvidedStaticParameter(false, parameterName, parameterType, parameterDefaultValue, (K [| |]))
  
          member __.AddXmlDocDelayed xmlDocFunction = customAttributesImpl.AddXmlDocDelayed xmlDocFunction
          member __.AddXmlDocComputed xmlDocFunction = customAttributesImpl.AddXmlDocComputed xmlDocFunction
  