summaryrefslogtreecommitdiffstats
path: root/src/test/ui/hygiene/trait_items-2.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/hygiene/trait_items-2.rs')
-rw-r--r--src/test/ui/hygiene/trait_items-2.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/test/ui/hygiene/trait_items-2.rs b/src/test/ui/hygiene/trait_items-2.rs
new file mode 100644
index 000000000..39edfc37d
--- /dev/null
+++ b/src/test/ui/hygiene/trait_items-2.rs
@@ -0,0 +1,20 @@
+// check-pass
+// ignore-pretty pretty-printing is unhygienic
+
+#![feature(decl_macro)]
+
+macro m($T:ident, $f:ident) {
+ pub trait $T {
+ fn f(&self) -> u32 { 0 }
+ fn $f(&self) -> i32 { 0 }
+ }
+ impl $T for () {}
+
+ let _: u32 = ().f();
+ let _: i32 = ().$f();
+}
+
+fn main() {
+ m!(T, f);
+ let _: i32 = ().f();
+}