Skip to content

Commit

Permalink
Add regression test
Browse files Browse the repository at this point in the history
  • Loading branch information
inquisitivecrystal committed Jan 5, 2022
1 parent 4865852 commit 42de973
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 0 deletions.
12 changes: 12 additions & 0 deletions src/test/ui/foreign/issue-91370-foreign-fn-block-impl.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// Regression test for issue #91370.

extern {
//~^ `extern` blocks define existing foreign functions
fn f() {
//~^ incorrect function inside `extern` block
//~| cannot have a body
impl Copy for u8 {}
}
}

fn main() {}
21 changes: 21 additions & 0 deletions src/test/ui/foreign/issue-91370-foreign-fn-block-impl.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
error: incorrect function inside `extern` block
--> $DIR/issue-91370-foreign-fn-block-impl.rs:5:8
|
LL | extern {
| ------ `extern` blocks define existing foreign functions and functions inside of them cannot have a body
LL |
LL | fn f() {
| ________^___-
| | |
| | cannot have a body
LL | |
LL | |
LL | | impl Copy for u8 {}
LL | | }
| |_____- help: remove the invalid body: `;`
|
= help: you might have meant to write a function accessible through FFI, which can be done by writing `extern fn` outside of the `extern` block
= note: for more information, visit https://doc.rust-lang.org/std/keyword.extern.html

error: aborting due to previous error

0 comments on commit 42de973

Please sign in to comment.