]> git.lizzy.rs Git - rust.git/blob - src/test/compile-fail-fulldeps/proc-macro/resolve-error.rs
Auto merge of #40163 - arielb1:normalization-1702, r=nikomatsakis
[rust.git] / src / test / compile-fail-fulldeps / proc-macro / resolve-error.rs
1 // Copyright 2016 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
4 //
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
10
11 // aux-build:derive-foo.rs
12 // aux-build:derive-clona.rs
13 // aux-build:attr_proc_macro.rs
14 // aux-build:bang_proc_macro.rs
15
16 #![feature(proc_macro)]
17
18 #[macro_use]
19 extern crate derive_foo;
20 #[macro_use]
21 extern crate derive_clona;
22 extern crate attr_proc_macro;
23 extern crate bang_proc_macro;
24
25 use attr_proc_macro::attr_proc_macro;
26 use bang_proc_macro::bang_proc_macro;
27
28 macro_rules! FooWithLongNam {
29     () => {}
30 }
31
32 macro_rules! attr_proc_mac {
33     () => {}
34 }
35
36 #[derive(FooWithLongNan)]
37 //~^ ERROR cannot find derive macro `FooWithLongNan` in this scope
38 //~^^ HELP did you mean `FooWithLongName`?
39 struct Foo;
40
41 #[attr_proc_macra]
42 //~^ ERROR cannot find attribute macro `attr_proc_macra` in this scope
43 //~^^ HELP did you mean `attr_proc_macro`?
44 struct Bar;
45
46 #[FooWithLongNan]
47 //~^ ERROR cannot find attribute macro `FooWithLongNan` in this scope
48 struct Asdf;
49
50 #[derive(Dlone)]
51 //~^ ERROR cannot find derive macro `Dlone` in this scope
52 //~^^ HELP did you mean `Clone`?
53 struct A;
54
55 #[derive(Dlona)]
56 //~^ ERROR cannot find derive macro `Dlona` in this scope
57 //~^^ HELP did you mean `Clona`?
58 struct B;
59
60 #[derive(attr_proc_macra)]
61 //~^ ERROR cannot find derive macro `attr_proc_macra` in this scope
62 struct C;
63
64 fn main() {
65     FooWithLongNama!();
66     //~^ ERROR cannot find macro `FooWithLongNama!` in this scope
67     //~^^ HELP did you mean `FooWithLongNam!`?
68
69     attr_proc_macra!();
70     //~^ ERROR cannot find macro `attr_proc_macra!` in this scope
71     //~^^ HELP did you mean `attr_proc_mac!`?
72
73     Dlona!();
74     //~^ ERROR cannot find macro `Dlona!` in this scope
75
76     bang_proc_macrp!();
77     //~^ ERROR cannot find macro `bang_proc_macrp!` in this scope
78     //~^^ HELP did you mean `bang_proc_macro!`?
79 }