After reading Chris' answer to [F# - public literal](https://stackoverflow.com/questions/1834923/f-public-literal/1834926) and the blog post at <http://blogs.msdn.com/b/chrsmith/archive/2008/10/03/f-zen-the-literal-attribute.aspx> I don't get why the following is not working:

```
[<Literal>]
let one = 1

[<Literal>]
let two = 2

let trymatch x =
    match x with
    | one -> printfn "%A" one
    | two -> printfn "%A" two
    | _ -> printfn "none"

trymatch 3

```

This keeps printing "3", although I think it shouldn't. What is it that I don't see here?