anchor.diff:      fun (i1:int) (i2:int) ->
           let s = { C = i1; D = i2 }
           let r1 = { R2 = s }
  -        (obj.ReferenceEquals (r1.R1, null))     |@ "r1.R1 is null" .&.
  -        (r1.R2 = { C = i1; D = i2 })            |@ "r1.R2 = { C = i1; D = i2 }"
  +        (obj.ReferenceEquals (r1.R1, null)) |@ "r1.R1 is null" .&.
  +        (r1.R2 = { C = i1; D = i2 })        |@ "r1.R2 = { C = i1; D = i2 }"
   
   
   [<Struct>]
  
positive.code: [<Struct>]
  [<StructLayout(LayoutKind.Explicit)>]
  type ExplicitLayoutStructRecord =
      {   [<FieldOffset 8>] mutable Z : int
          [<FieldOffset 4>] mutable Y : int
          [<FieldOffset 0>] mutable X : int
      }
  
  
  let [<Test>] ``struct records layout mutable fields correctly with [<StructLayout(LayoutKind.Explicit)>] and [<FieldOffset x>]`` () =
      let checkOffset fieldName offset = 
          offset = int (Marshal.OffsetOf (typeof<ExplicitLayoutStructRecord>, fieldName))
      Assert.IsTrue (checkOffset "X@" 0)
  
negative.code:     fun (i1:int) (i2:int) ->
          let r = { A = i1; B = i2 }
          let r1 = { R1 = r }
          (r1.R1 = { A = i1; B = i2 }) |@ "r1.R1 = { A = i1; B = i2 }" .&.
          (r1.R2 = { C = 0; D = 0 })   |@ "r1.R2 = { C = 0; D = 0 }"
  
  
  let [<Test>] ``struct records exhibit correct behaviour for Unchecked.defaultof`` () =
  