Fix expression parsing edge cases: x as T <<= y (#1804), break as T (#1805), match x { _ if .. => {} } (#1807) Fix expression printing edge cases: || -> T 'a: {} (#1806), if break x {} (#1808, #1810)