diff options
| author | bors <bors@rust-lang.org> | 2023-12-08 17:08:52 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2023-12-08 17:08:52 +0000 |
| commit | 77bb46dedbebdb4dd97c3f61cca4becedfc49066 (patch) | |
| tree | eb3ec527779d374cfce34e7ed1e06b9db0028b97 /tests/ui/patchable-function-entry | |
| parent | f114bb42ec9220a488e9cab120dadf2587196fec (diff) | |
| parent | a445ba8a9d1016895e06dfff532ee1b722c13c37 (diff) | |
| download | rust-77bb46dedbebdb4dd97c3f61cca4becedfc49066.tar.gz rust-77bb46dedbebdb4dd97c3f61cca4becedfc49066.zip | |
Auto merge of #118527 - Nadrieril:never_patterns_parse, r=compiler-errors
never_patterns: Parse match arms with no body
Never patterns are meant to signal unreachable cases, and thus don't take bodies:
```rust
let ptr: *const Option<!> = ...;
match *ptr {
None => { foo(); }
Some(!),
}
```
This PR makes rustc accept the above, and enforces that an arm has a body xor is a never pattern. This affects parsing of match arms even with the feature off, so this is delicate. (Plus this is my first non-trivial change to the parser).
~~The last commit is optional; it introduces a bit of churn to allow the new suggestions to be machine-applicable. There may be a better solution? I'm not sure.~~ EDIT: I removed that commit
r? `@compiler-errors`
Diffstat (limited to 'tests/ui/patchable-function-entry')
0 files changed, 0 insertions, 0 deletions
