FS0052: Védelmi másolat

Egy F#-projektben az alapértelmezett érték <WarningLevel> a 3. Ez a figyelmeztetés akkor jelenik meg, ha a figyelmeztetési szint a maximális értékre van állítva, 5. Ilyen esetben ez a kód:

System.DateTime.Now.ToString() |> printfn "%s"

A következő figyelmeztetést fogja eredményezni:

The value has been copied to ensure the original is not mutated by this operation or because the copy is implicit when returning a struct from a member and another member is then accessed

Ezek a kódrészletek nem eredményeznek figyelmeztetést:

let now = System.DateTime.Now
now.ToString() |> printfn "%s"
System.DateTime.Now |> printfn "%A"