summaryrefslogtreecommitdiffstats
path: root/src/test/ui/proc-macro/signature.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/proc-macro/signature.stderr')
-rw-r--r--src/test/ui/proc-macro/signature.stderr20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/test/ui/proc-macro/signature.stderr b/src/test/ui/proc-macro/signature.stderr
new file mode 100644
index 000000000..a6bd98ddb
--- /dev/null
+++ b/src/test/ui/proc-macro/signature.stderr
@@ -0,0 +1,20 @@
+error[E0277]: expected a `Fn<(proc_macro::TokenStream,)>` closure, found `unsafe extern "C" fn(i32, u32) -> u32 {foo}`
+ --> $DIR/signature.rs:10:1
+ |
+LL | / pub unsafe extern "C" fn foo(a: i32, b: u32) -> u32 {
+LL | |
+LL | | loop {}
+LL | | }
+ | |_^ call the function in a closure: `|| unsafe { /* code */ }`
+ |
+ = help: the trait `Fn<(proc_macro::TokenStream,)>` is not implemented for `unsafe extern "C" fn(i32, u32) -> u32 {foo}`
+ = note: unsafe function cannot be called generically without an unsafe block
+note: required by a bound in `ProcMacro::custom_derive`
+ --> $SRC_DIR/proc_macro/src/bridge/client.rs:LL:COL
+ |
+LL | expand: impl Fn(crate::TokenStream) -> crate::TokenStream + Copy,
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ProcMacro::custom_derive`
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0277`.