diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/ui/macros/macro-interpolation.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/test/ui/macros/macro-interpolation.rs b/src/test/ui/macros/macro-interpolation.rs index abe1f2aaf15..35003a79ad7 100644 --- a/src/test/ui/macros/macro-interpolation.rs +++ b/src/test/ui/macros/macro-interpolation.rs @@ -14,8 +14,20 @@ macro_rules! overly_complicated { } +macro_rules! qpath { + (path, <$type:ty as $trait:path>::$name:ident) => { + <$type as $trait>::$name + }; + + (ty, <$type:ty as $trait:ty>::$name:ident) => { + <$type as $trait>::$name + }; +} + pub fn main() { + let _: qpath!(path, <str as ToOwned>::Owned); + let _: qpath!(ty, <str as ToOwned>::Owned); + assert!(overly_complicated!(f, x, Option<usize>, { return Some(x); }, Some(8), Some(y), y) == 8) - } |
