Any reason why this is not compilation time error

```
let a = 1;
match a {
1 => {}
1 => {}
_ => {}
_ => {}
}
```

?

while this is obviously nonsense, but things like these are possible:

```
let a = 1;
let x = 2;
match a {
x => {}
_ => {}
}
```

In fact we have here two `_`

branches, but for language newcomer,
this is not obvious, so any reasons to not emit compile time error, for such constructions?