#![feature(use_extern_macros)] extern crate wasm_bindgen; use wasm_bindgen::prelude::*; #[wasm_bindgen] pub struct A; #[wasm_bindgen] default impl A { } #[wasm_bindgen] unsafe impl A { } #[wasm_bindgen] impl Clone for A { } #[wasm_bindgen] impl A { } #[wasm_bindgen] impl &'static A { } macro_rules! x { () => () } #[wasm_bindgen] impl A { const X: u32 = 3; type Y = u32; x!(); // pub default fn foo() {} // TODO: compiler's pretty printer totally broken pub const fn foo() {} pub unsafe fn foo() {} }