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

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

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

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

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

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

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

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

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

error: can't #[wasm_bindgen] functions with lifetime or type parameters
  --> $DIR/invalid-items.rs:35:12
   |
35 | 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:38:1
   |
38 | trait X {}
   | ^^^^^^^^^^

error: aborting due to 11 previous errors

