anchor.diff:      and getStaticWriter (t : Type) = fun () ->
           match t.GetMethod(writerFuncName, staticFlags, null, [| t |], null) |> Utils.toOption with
           | Some func ->
  +            let inner = ValueTypeSerializer.getInnerTextWriter XmlConfig.Instance.SpecialCharEncoding
               let writer = (fun a (w : TextWriter) x -> 
                   let obj = func.Invoke(null, [| x |])
  -                ValueTypeSerializer.writeStringObject a w obj)
  +                inner a w obj)
               if not XmlConfig.Instance.UseAttributes then
                   injectWriteTag writer
               else getInjectWriter t writer
  
positive.code:     let inline nullableWriter n writer value func =
          if value <> null then func n writer value
  
      let getInnerTextWriter writer value =
          let func =
              match XmlConfig.Instance.SpecialCharEncoding with
              | UnicodeSerializationType.HexEncoded     -> writeStringUnicode writeUnicodeHex
              | UnicodeSerializationType.DecimalEncoded -> writeStringUnicode writeUnicode
              | _                                       -> writeString
          func writer value
  
      let writeStringObject _ writer (value : obj) =
          let v : string = unbox value
          getInnerTextWriter writer v
  
      let writeObject _ (writer : TextWriter) (value : obj) =
          writer.Write(value)
  
negative.code:     /// Writer function for string arrays
      let writeStrArray name (writer : TextWriter) (value : obj) =
          let array : string [] = unbox value
          let strWriter = ValueTypeSerializer.getInnerTextWriter XmlConfig.Instance.SpecialCharEncoding
          array
          |> Array.iter (fun elem -> writeTag name.Item name writer strWriter elem)
  
      /// Writer function for untyped IEnumerables
      let writeEnumerable determineFunc (name : NameInfo) (writer : TextWriter) (value : obj) =
  