
- Refactors the Emscripten target spec to share code with other wasm targets. - Replaces the incorrect wasm32 C call ABI with the old asmjs version, which is correct for both wasm32 and JS. - Updates the varargs ABI used by Emscripten and deletes the old one. - Removes the obsolete wasm32-experimental-emscripten target. - Temporarily makes Emscripten targets use panic=abort by default because supporting unwinding will require an LLVM patch.
32 lines
592 B
Rust
32 lines
592 B
Rust
// run-pass
|
|
// ignore-windows
|
|
// ignore-macos
|
|
// ignore-emscripten common linkage not implemented right now
|
|
|
|
#![feature(linkage)]
|
|
|
|
#[linkage = "common"]
|
|
pub static mut TEST1: u32 = 0u32;
|
|
|
|
#[linkage = "external"]
|
|
pub static TEST2: bool = true;
|
|
|
|
#[linkage = "internal"]
|
|
pub static TEST3: bool = true;
|
|
|
|
#[linkage = "linkonce"]
|
|
pub static TEST4: bool = true;
|
|
|
|
#[linkage = "linkonce_odr"]
|
|
pub static TEST5: bool = true;
|
|
|
|
#[linkage = "private"]
|
|
pub static TEST6: bool = true;
|
|
|
|
#[linkage = "weak"]
|
|
pub static TEST7: bool = true;
|
|
|
|
#[linkage = "weak_odr"]
|
|
pub static TEST8: bool = true;
|
|
|
|
fn main() {}
|