From 093fb856a32c93941db9297cc452444d9c628ce4 Mon Sep 17 00:00:00 2001 From: maik Date: Tue, 7 Jan 2020 16:20:58 +0100 Subject: [PATCH] Always export static variables as SymbolExportLevel::C in wasm --- src/librustc_codegen_ssa/back/symbol_export.rs | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/librustc_codegen_ssa/back/symbol_export.rs b/src/librustc_codegen_ssa/back/symbol_export.rs index 9cf0f0a801e1..a406b5f103b9 100644 --- a/src/librustc_codegen_ssa/back/symbol_export.rs +++ b/src/librustc_codegen_ssa/back/symbol_export.rs @@ -345,16 +345,11 @@ fn symbol_export_level(tcx: TyCtxt<'_>, sym_def_id: DefId) -> SymbolExportLevel if is_extern && !std_internal { let target = &tcx.sess.target.target.llvm_target; // WebAssembly cannot export data symbols, so reduce their export level - if target.contains("wasm32") || target.contains("emscripten") { + if target.contains("emscripten") { if let Some(Node::Item(&hir::Item { kind: hir::ItemKind::Static(..), .. })) = tcx.hir().get_if_local(sym_def_id) { - let export_level = if tcx.type_of(sym_def_id).is_scalar() { - SymbolExportLevel::C - } else { - SymbolExportLevel::Rust - }; - return export_level; + return SymbolExportLevel::Rust; } }