]> git.lizzy.rs Git - rust.git/commit
Better message for invalid keyword placement in fn
authorAlexis Bourget <alexis.bourget@gmail.com>
Mon, 2 Aug 2021 09:10:19 +0000 (11:10 +0200)
committerAlexis Bourget <alexis.bourget@gmail.com>
Mon, 2 Aug 2021 09:10:19 +0000 (11:10 +0200)
commit690cbb79b396fa327b2381ab5e8fb22702623df5
treeeb4ed7058377657c914c6bf238e3deda7c4a59bd
parentf381e77d3590bc36f09b0d48cffb504f92febf5e
Better message for invalid keyword placement in fn

After this commit, `unsafe async fn ...` now suggests the `async unsafe` fix
instead of misunderstanding the issue.

This is not perfect for repeated keywords (`const async const`) and for
keywords that are misplaced after `extern "some abi"` because of the way
`check_fn_font_matter` works, but changing it breaks so many tests and
diagnostics it has been judged too high a cost for this PR.
13 files changed:
compiler/rustc_parse/src/parser/item.rs
src/test/ui/async-await/no-async-const.stderr
src/test/ui/async-await/no-unsafe-async.stderr
src/test/ui/parser/issue-87217-keyword-order/const-async-const.rs [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/const-async-const.stderr [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/several-kw-jump.rs [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/several-kw-jump.stderr [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/wrong-async.rs [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/wrong-async.stderr [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/wrong-const.rs [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/wrong-const.stderr [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/wrong-unsafe.rs [new file with mode: 0644]
src/test/ui/parser/issue-87217-keyword-order/wrong-unsafe.stderr [new file with mode: 0644]