anchor.diff:          check intInArr [|2;1;2;3|]
   
       [<Test>]
  -    member this.``Struct not mutable``() = 
  +    member this.``Struct with 2 constructors``() = 
           let command = 
               <@ 
                   fun(range:_1D) (buf:array<int>) (s:c) -> 
                       buf.[0] <- s.x + s.y
  +                    let s2 = new c(6)
  +                    buf.[1] <- s2.x
               
               @>
           let s = new c(2, 3)
           let run,check = checkResult command
           run _1d intInArr s        
  -        check intInArr [|5;1;2;3|]
  -
  -    [<Test>]
  -    member this.``Struct int byte``() = 
  -        let command = 
  -            <@ 
  -                fun(range:_1D) (buf:array<int>) (s:b) -> 
  -                    buf.[0] <- s.x
  -            
  -            @>
  -        let s = new b(1, 86uy)
  -        let run,check = checkResult command
  -        run _1d intInArr s        
  -        check intInArr [|1;1;2;3|]
  +        check intInArr [|5;6;2;3|]
   
       [<Test>]
       member this.``Struct with arr``() = //doesn't work
  
positive.code:         check intInArr [|1;1;2;3|]
  
      [<Test>]
      member this.``tuple``() = //doesn't work
          let command = 
              <@ 
                  fun (range:_1D) (buf:array<int>) (s:int*int) -> 
  
negative.code:         kernelPrepareF,check
      
      [<Test>]
      member this.``struct int int``() = 
          let command = 
              <@ 
                  fun (range:_1D) (buf:array<int>) (s:a)  -> 
  