diff options
| author | Michael Woerister <michaelwoerister@posteo> | 2021-10-19 14:58:21 +0200 |
|---|---|---|
| committer | Michael Woerister <michaelwoerister@posteo> | 2021-10-19 14:58:21 +0200 |
| commit | 456283c95dfc21a94a3f48e26a0809bc8976afbe (patch) | |
| tree | ae4d2222aecf0de9dce988e8d80384dfe5f10f71 /src/bootstrap | |
| parent | d45ed7502ad225739270a368528725930f54b7b6 (diff) | |
| download | rust-456283c95dfc21a94a3f48e26a0809bc8976afbe.tar.gz rust-456283c95dfc21a94a3f48e26a0809bc8976afbe.zip | |
Make new symbol mangling scheme default for compiler itself.
Diffstat (limited to 'src/bootstrap')
| -rw-r--r-- | src/bootstrap/builder.rs | 20 | ||||
| -rw-r--r-- | src/bootstrap/config.rs | 4 |
2 files changed, 21 insertions, 3 deletions
diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs index ac1841b6913..d5656f0f37e 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs @@ -972,8 +972,26 @@ impl<'a> Builder<'a> { } } - if self.config.rust_new_symbol_mangling { + let use_new_symbol_mangling = match self.config.rust_new_symbol_mangling { + Some(setting) => { + // If an explicit setting is given, use that + setting + } + None => { + if mode == Mode::Std { + // The standard library defaults to the legacy scheme + false + } else { + // The compiler and tools default to the new scheme + true + } + } + }; + + if use_new_symbol_mangling { rustflags.arg("-Zsymbol-mangling-version=v0"); + } else { + rustflags.arg("-Zsymbol-mangling-version=legacy"); } // FIXME: It might be better to use the same value for both `RUSTFLAGS` and `RUSTDOCFLAGS`, diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs index 9a48b768cb3..6585152ab31 100644 --- a/src/bootstrap/config.rs +++ b/src/bootstrap/config.rs @@ -140,7 +140,7 @@ pub struct Config { pub rust_verify_llvm_ir: bool, pub rust_thin_lto_import_instr_limit: Option<u32>, pub rust_remap_debuginfo: bool, - pub rust_new_symbol_mangling: bool, + pub rust_new_symbol_mangling: Option<bool>, pub rust_profile_use: Option<String>, pub rust_profile_generate: Option<String>, pub llvm_profile_use: Option<String>, @@ -870,7 +870,7 @@ impl Config { config.rust_run_dsymutil = rust.run_dsymutil.unwrap_or(false); optimize = rust.optimize; ignore_git = rust.ignore_git; - set(&mut config.rust_new_symbol_mangling, rust.new_symbol_mangling); + config.rust_new_symbol_mangling = rust.new_symbol_mangling; set(&mut config.rust_optimize_tests, rust.optimize_tests); set(&mut config.codegen_tests, rust.codegen_tests); set(&mut config.rust_rpath, rust.rpath); |
