error: can only #[wasm_bindgen] public functions
 --> $DIR/invalid-items.rs:4:1
  |
4 | fn foo() {}
  | ^^^^^^^^^^^

error: can only #[wasm_bindgen] safe functions
 --> $DIR/invalid-items.rs:7:5
  |
7 | pub unsafe fn foo1() {}
  |     ^^^^^^

error: can only #[wasm_bindgen] non-const functions
  --> $DIR/invalid-items.rs:10:5
   |
10 | pub const fn foo2() {}
   |     ^^^^^

error: structs with #[wasm_bindgen] cannot have lifetime or type parameters currently
  --> $DIR/invalid-items.rs:13:11
   |
13 | struct Foo<T>(T);
   |           ^^^

error: cannot import mutable globals yet
  --> $DIR/invalid-items.rs:17:12
   |
17 |     static mut FOO: u32;
   |            ^^^

error: can't #[wasm_bindgen] variadic functions
  --> $DIR/invalid-items.rs:19:25
   |
19 |     pub fn foo3(x: i32, ...);
   |                         ^^^

error: only foreign mods with the `C` ABI are allowed
  --> $DIR/invalid-items.rs:23:8
   |
23 | extern "system" {
   |        ^^^^^^^^

error: can't #[wasm_bindgen] functions with lifetime or type parameters
  --> $DIR/invalid-items.rs:27:12
   |
27 | pub fn foo4<T>() {}
   |            ^^^

error: can't #[wasm_bindgen] functions with lifetime or type parameters
  --> $DIR/invalid-items.rs:29:12
   |
29 | pub fn foo5<'a>() {}
   |            ^^^^

error: can't #[wasm_bindgen] functions with lifetime or type parameters
  --> $DIR/invalid-items.rs:31:12
   |
31 | pub fn foo6<'a, T>() {}
   |            ^^^^^^^

error: #[wasm_bindgen] can only be applied to a function, struct, enum, impl, or extern block
  --> $DIR/invalid-items.rs:34:1
   |
34 | trait X {}
   | ^^^^^^^^^^
