diff options
| author | LeSeulArtichaut <leseulartichaut@gmail.com> | 2021-02-09 00:20:44 +0100 |
|---|---|---|
| committer | LeSeulArtichaut <leseulartichaut@gmail.com> | 2021-02-10 16:41:48 +0100 |
| commit | 089ee27dd0ef2a639647cddecb2ea332c8d02bac (patch) | |
| tree | 716e4a07230f98f658a4b879e747c588e4a5d8cd /src | |
| parent | 793e88ad168a7ca63e9cd95faf8e7833fb5c341b (diff) | |
| download | rust-089ee27dd0ef2a639647cddecb2ea332c8d02bac.tar.gz rust-089ee27dd0ef2a639647cddecb2ea332c8d02bac.zip | |
Do not ICE on range patterns in function arguments
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustdoc/clean/utils.rs | 5 | ||||
| -rw-r--r-- | src/test/rustdoc/range-arg-pattern.rs | 2 |
2 files changed, 2 insertions, 5 deletions
diff --git a/src/librustdoc/clean/utils.rs b/src/librustdoc/clean/utils.rs index ef59e13f8fb..5b82954536c 100644 --- a/src/librustdoc/clean/utils.rs +++ b/src/librustdoc/clean/utils.rs @@ -289,10 +289,7 @@ crate fn name_from_pat(p: &hir::Pat<'_>) -> Symbol { ); return Symbol::intern("()"); } - PatKind::Range(..) => panic!( - "tried to get argument name from PatKind::Range, \ - which is not allowed in function arguments" - ), + PatKind::Range(..) => return kw::Underscore, PatKind::Slice(ref begin, ref mid, ref end) => { let begin = begin.iter().map(|p| name_from_pat(&**p).to_string()); let mid = mid.as_ref().map(|p| format!("..{}", name_from_pat(&**p))).into_iter(); diff --git a/src/test/rustdoc/range-arg-pattern.rs b/src/test/rustdoc/range-arg-pattern.rs index f4cc36b1055..c08faaad0ec 100644 --- a/src/test/rustdoc/range-arg-pattern.rs +++ b/src/test/rustdoc/range-arg-pattern.rs @@ -1,5 +1,5 @@ #![crate_name = "foo"] // @has foo/fn.f.html -// @has - '//*[@class="rust fn"]' 'pub fn f(0u8 ...255: u8)' +// @has - '//*[@class="rust fn"]' 'pub fn f(_: u8)' pub fn f(0u8...255: u8) {} |
