diff options
| author | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2019-07-08 21:58:42 +0300 |
|---|---|---|
| committer | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2019-07-11 00:35:01 +0300 |
| commit | e86e5cb38ffb9a55f6d9ab6ebda2d384fb154626 (patch) | |
| tree | 15765a41615dd4f84e30be843377182fc6a47253 /src/test/ui/macros | |
| parent | 7b74d72d9a4414f088d7f638343d5d8a7c67084a (diff) | |
| download | rust-e86e5cb38ffb9a55f6d9ab6ebda2d384fb154626.tar.gz rust-e86e5cb38ffb9a55f6d9ab6ebda2d384fb154626.zip | |
Add a regression test for #44692
Add a test for the issue resolved by removing `resolve_macro_path` Add a test making sure that extern prelude entries introduced from an opaque macro are not visible anywhere, even it that macro Fix test output after rebase
Diffstat (limited to 'src/test/ui/macros')
| -rw-r--r-- | src/test/ui/macros/derive-in-eager-expansion-hang.rs | 14 | ||||
| -rw-r--r-- | src/test/ui/macros/derive-in-eager-expansion-hang.stderr | 17 |
2 files changed, 31 insertions, 0 deletions
diff --git a/src/test/ui/macros/derive-in-eager-expansion-hang.rs b/src/test/ui/macros/derive-in-eager-expansion-hang.rs new file mode 100644 index 00000000000..0729e14d5b2 --- /dev/null +++ b/src/test/ui/macros/derive-in-eager-expansion-hang.rs @@ -0,0 +1,14 @@ +// Regression test for the issue #44692 + +macro_rules! hang { () => { + { //~ ERROR format argument must be a string literal + #[derive(Clone)] + struct S; + + "" + } +}} + +fn main() { + format_args!(hang!()); +} diff --git a/src/test/ui/macros/derive-in-eager-expansion-hang.stderr b/src/test/ui/macros/derive-in-eager-expansion-hang.stderr new file mode 100644 index 00000000000..1ef9427666b --- /dev/null +++ b/src/test/ui/macros/derive-in-eager-expansion-hang.stderr @@ -0,0 +1,17 @@ +error: format argument must be a string literal + --> $DIR/derive-in-eager-expansion-hang.rs:4:5 + | +LL | / { +LL | | #[derive(Clone)] +LL | | struct S; +LL | | +LL | | "" +LL | | } + | |_____^ +help: you might be missing a string literal to format with + | +LL | format_args!("{}", hang!()); + | ^^^^^ + +error: aborting due to previous error + |
