diff options
| author | Aaron Hill <aa1ronham@gmail.com> | 2021-03-25 15:40:50 -0400 |
|---|---|---|
| committer | Aaron Hill <aa1ronham@gmail.com> | 2021-03-25 15:41:31 -0400 |
| commit | 8ecd931a8eb0bb9bde2e7d35e72553b512d01c80 (patch) | |
| tree | b564308e942c85f29774402b8a1c9fad2d157db2 /src/test | |
| parent | 6e17a5c5fd086ebe6f57216fb3ce5d1d8d6c83e5 (diff) | |
| download | rust-8ecd931a8eb0bb9bde2e7d35e72553b512d01c80.tar.gz rust-8ecd931a8eb0bb9bde2e7d35e72553b512d01c80.zip | |
Don't ICE when using `#[global_alloc]` on a non-item statement
Fixes #83469 We need to return an `Annotatable::Stmt` if we were passed an `Annotatable::Stmt`
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/ui/proc-macro/issue-83469-global-alloc-invalid-stmt.rs | 10 | ||||
| -rw-r--r-- | src/test/ui/proc-macro/issue-83469-global-alloc-invalid-stmt.stderr | 8 |
2 files changed, 18 insertions, 0 deletions
diff --git a/src/test/ui/proc-macro/issue-83469-global-alloc-invalid-stmt.rs b/src/test/ui/proc-macro/issue-83469-global-alloc-invalid-stmt.rs new file mode 100644 index 00000000000..25adc5d2578 --- /dev/null +++ b/src/test/ui/proc-macro/issue-83469-global-alloc-invalid-stmt.rs @@ -0,0 +1,10 @@ +// Regression test for issue #83469 +// Ensures that we recover from `#[global_alloc]` on an invalid +// stmt without an ICE + +fn outer() { + #[global_allocator] + fn inner() {} //~ ERROR allocators must be statics +} + +fn main() {} diff --git a/src/test/ui/proc-macro/issue-83469-global-alloc-invalid-stmt.stderr b/src/test/ui/proc-macro/issue-83469-global-alloc-invalid-stmt.stderr new file mode 100644 index 00000000000..ec0e3c4c754 --- /dev/null +++ b/src/test/ui/proc-macro/issue-83469-global-alloc-invalid-stmt.stderr @@ -0,0 +1,8 @@ +error: allocators must be statics + --> $DIR/issue-83469-global-alloc-invalid-stmt.rs:7:5 + | +LL | fn inner() {} + | ^^^^^^^^^^^^^ + +error: aborting due to previous error + |
