libsyntax: Tighten up expressions in patterns

r? @graydon