-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[LLVM] Segfault / "llvm::thinLTOInternalizeModule ... Assertion `GS != DefinedGlobals.end()' failed". #53912
Comments
Found the culprit in /// Convenience method for creating a promoted global name
/// for the given value name of a local, and its original module's ID.
static std::string getGlobalNameForLocal(StringRef Name, ModuleHash ModHash) {
SmallString<256> NewName(Name);
NewName += ".llvm.";
NewName += utostr((uint64_t(ModHash[0]) << 32) |
ModHash[1]); // Take the first 64 bits
return NewName.str();
}
/// Helper to obtain the unpromoted name for a global value (or the original
/// name if not promoted).
static StringRef getOriginalNameBeforePromote(StringRef Name) {
std::pair<StringRef, StringRef> Pair = Name.split(".llvm.");
return Pair.first;
} LLVM implicitly assumes that Probably the correct thing to do for LLVM is to split the string at the last |
Why are computers |
The work around I introduced with the above commit is a proposition of @eddyb and fixes this issue with the segfault. |
Sanitizing |
fc84f5f837 Auto merge of #56581 - kennytm:rollup, r=kennytm 15a2607863 Auto merge of #56066 - jethrogb:jb/sgx-target, r=alexcrichton 7bea6a1964 SGX target: implement command-line arguments and environment variables 6650f43a3f SGX target: implement time 59b79f71e9 SGX target: implement networking 1a894f135e SGX target: implement streams 8d6edc9f8f SGX target: implement synchronization primitives and threading 1e44e2de6c SGX target: implement user memory management 39f9751716 SGX target: add thread local storage 4a3505682e Add x86_64-fortanix-unknown-sgx target to libstd and dependencies a40aa45980 Rollup merge of #56574 - cbarrick:master, r=varkor 06f3b57633 Rollup merge of #56561 - Zoxc:too-raw, r=Gankro aa5ba8315a Rollup merge of #56555 - Mark-Simulacrum:stderr-profile, r=wesleywiser 0e41ef13aa Rollup merge of #56516 - frewsxcv:frewsxcv-eq, r=Mark-Simulacrum 6a07f23c78 Rollup merge of #56434 - Zoxc:par-tests, r=michaelwoerister 6d3501ebe3 Rollup merge of #56250 - dwijnand:ptr-hash, r=alexcrichton 92638ef0cb Rollup merge of #56000 - hug-dev:armv8m.main, r=alexcrichton a2fb99bc17 Auto merge of #54271 - petrochenkov:nolegder, r=eddyb,alexcrichton 8ab115c21d Unsupport `#[derive(Trait)]` sugar for `#[derive_Trait]` legacy plugin attributes 5182cc1ca6 Auto merge of #55318 - Aaron1011:fix/final-auto-trait-resolve, r=nikomatsakis 813b484d1e Fix printing of spans with no TyCtxt 93294ea456 Fix 4fac7396a2 Fix a race condition ecd5efa641 Show usages of query cycles and correctly shift queries in a cycle b6d3668c42 Fix a stutter in the docs for slice::exact_chunks 118e052d84 Auto merge of #56565 - matthiaskrgr:clippy, r=oli-obk cd48ce1e9a Auto merge of #56282 - qnighy:additional-sizedness-fix, r=nikomatsakis 078984d892 submodules: update clippy from 29bf75cd to 1df5766c 4bb5d35659 Auto merge of #56392 - petrochenkov:regensym, r=oli-obk c559216ad0 Change sys::Thread::new to take the thread entry as Box<dyn FnBox() + 'static>̣ 6c03640646 Update compiler_builtins and remove wasm f32<->f64 math conversions 22c4368993 Refactor net::each_addr/lookup_host to forward error from resolve 030b1ed7f7 Refactor stderr_prints_nothing into a more modular function 7df4b812f0 Fix bug in from_key_hashed_nocheck 367e783e6f Auto merge of #56557 - pietroalbini:rollup, r=pietroalbini 128a1fa4e1 Auto merge of #55635 - oli-obk:min_const_unsafe_fn, r=nikomatsakis cd1ee5edbd Rollup merge of #56553 - wesleywiser:silence_profiler_output, r=Mark-Simulacrum e9e92d53ad Rollup merge of #56548 - Lucretiel:string-extend-optimize, r=sfackler 9e7ff56750 Rollup merge of #56528 - sinkuu:unused_dep, r=Mark-Simulacrum bd8dd11d4d Rollup merge of #56525 - udoprog:linux-current-exe, r=alexcrichton e941e1a624 Rollup merge of #56500 - ljedrz:cleanup_rest_of_const_lifetimes, r=zackmdavis 50148a9566 Rollup merge of #56446 - arielb1:special-env-implications, r=nikomatsakis 0be8537e23 Rollup merge of #56441 - ollie27:rustbuild_compiler_docs, r=alexcrichton 0aa72ad55d Rollup merge of #56426 - petrochenkov:syntweak, r=nikomatsakis e57ed0ddab Rollup merge of #56362 - varkor:stabilise-exhaustive-integer-patterns, r=nikomatsakis a88feabac4 Rollup merge of #56332 - GuillaumeGomez:specifi-crate-search, r=QuietMisdreavus 3073c7af5f Rollup merge of #56315 - weiznich:rustdoc_inline_macro_reexport, r=QuietMisdreavus 77a6a61f06 Auto merge of #56307 - RalfJung:stacked-borrows-2-phase, r=oli-obk 84443a3a24 Send textual profile data to stderr, not stdout 3858aff9d3 Don't print the profiling summary to stdout when -Zprofile-json is set 811a2bfe53 Added explainatory comments 1839c144bc Auto merge of #54517 - mcr431:53956-panic-on-include_bytes-of-own-file, r=michaelwoerister 823dd8ca33 Fixed mutability 4988b096e6 Auto merge of #56549 - pietroalbini:rollup, r=pietroalbini f8ee5ab803 Rollup merge of #56538 - xfix:patch-13, r=bluss 0fb90f372e Rollup merge of #56523 - JohnHeitmann:es6, r=GuillaumeGomez 39d4c0caa4 Rollup merge of #56498 - GuillaumeGomez:line-numbers, r=QuietMisdreavus bcf2fa190e Rollup merge of #56497 - ljedrz:cleanup_libstd_const_lifetimes, r=kennytm d07d299cba Rollup merge of #56476 - GuillaumeGomez:invalid-line-number-match, r=QuietMisdreavus 650b4ed5d1 Rollup merge of #56466 - ljedrz:delete_tuple_slice, r=nikomatsakis 1276ffeba2 Rollup merge of #56456 - oli-obk:private_impl_trait, r=cramertj 4ff4fc1bc9 Rollup merge of #56452 - sinkuu:redundant_clone, r=nikic 21ba28f1c6 Rollup merge of #56424 - mark-i-m:explain-raw, r=Centril b6e2fc9aff Rollup merge of #56388 - matthewjasper:more-lexical-mir-cleanup, r=nikomatsakis b2a002dc4b Rollup merge of #56372 - wildarch:issue-55314-second-borrow-ref, r=davidtwco 64371f1cfe Rollup merge of #56119 - frewsxcv:frewsxcv-option-carrier, r=TimNN 1594a4245b Rollup merge of #55987 - Thomasdezeeuw:weak-ptr_eq, r=sfackler 66ba6b3a66 Rollup merge of #55563 - GuillaumeGomez:doc-search-sentence, r=QuietMisdreavus 159886863b Rollup merge of #51753 - gruberb:document-from-conversions-libstdpath, r=QuietMisdreavus 180dcc3118 Optimized string FromIterator impls ed64b1927b Fix precise_pointer_size_matching tests on all platforms 14997d56a5 Auto merge of #55933 - euclio:doc-panic, r=QuietMisdreavus b866f7d258 Auto merge of #56535 - matthiaskrgr:clippy, r=oli-obk a964307999 Add a test for cloned side effects 3eddc743f2 Use inner iterator may_have_side_effect for Cloned c359f98c7a emit error when doc generation fails dc0bbd0b31 submodules: update clippy from b2601beb to 29bf75cd 93ac09c3b5 Auto merge of #55466 - sinkuu:cleanup, r=petrochenkov 21cb46a6e9 Auto merge of #55922 - oli-obk:slice_pat_ice, r=zackmdavis 6cfbb5b9a1 Remove unused dependency (rustc_lint -> rustc_mir) f423ff7be8 Fix pretty test d8046ed51a Auto merge of #56519 - steveklabnik:edition-guide, r=pietroalbini 3512fb0467 Avoid extra copy and syscall in std::env::current_exe f0f8aa9e05 adds DocTest filename variant, refactors doctest_offset out of source_map, fixes remaining test failures 5d7cf59e94 Added trailing newline 56ace3e870 Added a bare-bones eslint config (removing jslint) 88130f1796 updates all Filename variants to take a fingerprint 6ee4d3cafc new_source_file no longer enters duplicate files, expand_include_bytes includes the source if it can convert bytes to string 6b0ac4987a build the edition guide b3af09205b Auto merge of #56486 - matthewjasper:propagate-all-closure-bounds, r=pnkfelix c025d61409 Replace usages of `..i + 1` ranges with `..=i`. b2e6da7a7f Call methods on the right tcx 9012af6f19 Utilize `?` instead of `return None`. 906deae079 Auto merge of #56244 - oli-obk:loud_ui_errors, r=nikomatsakis 0f47c2a078 Add Armv8-M Mainline targets 431e0ab62f Auto merge of #55871 - ljedrz:llvm_back_allocations, r=nagisa d0c64bb296 cleanup: remove static lifetimes from consts e41e85cb5c Fix line numbers display cb71752f91 Tidy fixup 956b03f7db Add a test case for inlining the docs of a macro reexport 9d4e17ae1a Remove support for proc macro doc inlining 11fb023d4f Allow renaming macro 8c4129cd9a cleanup: remove static lifetimes from consts in libstd 58e9832a0d Auto merge of #56224 - ehuss:update-cargo, r=alexcrichton f4115765c5 Intrinsic checks are just needed for `qualify_min_const_fn` b77969466c Clear up some code 932dbe816e Explain unsafety trickery of const functions b75d5f1867 Clean up the logic in `is_min_const_fn` ae0b00cada Add and update tests 137a640d61 Automatically generate imports for newtype_index `Deserialize` impls 3ce211dbd0 Increase code-reuse and -readability 37ef5e43af Add tests for stable unsafe features in const fn 4497ff3762 Emit feature gate suggestion e5d90652e2 Comment on the unsafety code for layout constrained fields 55abc0bc90 Also prevent mutation fields directly 1894a5fe2c Also make immutable references to non-freeze restricted value range types unsafe 081c49783f generalize the message about the creation of layout restricted types c4a850078c Adjust a rustc test to the safety changes 14218e3969 Trailing newlines again 8bdb11c4d9 Forbid the creation of mutable borrows to fields of layout constrained types 693c55372e Move ref to packed struct field check into projection arm ec6573f33b Make `newtype_index` safe 02b22323f1 Make sure the initialization of constrained int range newtypes is unsafe cc3470ce3b Add test for dereferencing raw pointers and immediately referencing again 906a49eef2 Document unsafe rules with comments and `bug!` calls f2ae7b78d6 Allow calling `const unsafe fn` in `const fn` behind a feature gate 450a8a6f35 Add extra comment slash ff97569dd9 Update doc-ui tests 690439bb45 Update ui tests 374a096cb1 Remove unused stderr file 1b636b1cd9 Newlines.... newlines everywhere 296398ab52 Add a test ensuring that we don't regress this 61efc3b71b Update tests 2664aadaa2 Report failing tests without `//~ ERROR` comments ad765695d1 Fix ptr::hash, just hash the raw pointer 6fab3f9c69 Make ptr::hash take a raw painter like ptr::eq 596e10fd32 Auto merge of #55707 - GuillaumeGomez:file-sidebar, r=QuietMisdreavus bc7c3dc71d sort_by_cached_key -> sort_by 65aa0a6249 Remove redundant clone 91d5d56c00 Auto merge of #55682 - GuillaumeGomez:primitive-sidebar-link-gen, r=QuietMisdreavus 5912a690e0 Auto merge of #56467 - oli-obk:osx_stack_bump, r=nagisa 4e3128223b Fix test 11af6f66cb Use iterator and pattern APIs instead of `char_at` d748712521 Propagate all closure requirements to the caller c8ae2de836 Auto merge of #55041 - evq:thumbv8m, r=alexcrichton d08f7dcdca Address review comments 3f253f5394 Improve filter test 82a7b6fde8 Don't generate suffix for source-file.js d415844f5e syntax: Remove `#[non_exhaustive]` from `Edition` 08f8faedd0 syntax: Rename some keywords 101467c152 syntax: `dyn` is a used keyword now 0b40be696e link to raw identifiers 9c8802dc01 Explain raw identifer syntax db64f60b1d Bump stack size to 32MB 651373c13d data_structures: remove tuple_slice 0c999ed132 Auto merge of #56451 - kennytm:rollup, r=kennytm 46c88b9502 Update rls 9dfc98ff17 Run x86_64-gnu-tools job for "update cargo" PRs since cargo can break RLS. 8c20adddbc Update cargo 1fb82b5a03 Handle existential types in dead code analysis e6c8e9dc79 update miri ef2b18a873 fix recently added Retag statement 005df5fe03 provide a way to replace the tag in a Scalar/MemPlace d2c19e0bcc Retag needs to know whether this is a 2-phase-reborrow 9cd3bef4cf Auto merge of #55010 - tromey:Bug-9224-generic-parameters, r=michaelwoerister ac363d8793 Rollup merge of #56438 - yui-knk:remove_not_used_DotEq_token, r=petrochenkov 21433f2812 Rollup merge of #56435 - RalfJung:libstd-without-c, r=alexcrichton a498a6d198 Rollup merge of #56433 - yui-knk:update_comment_of_parse_visibility, r=petrochenkov 52a4fc8130 Rollup merge of #56432 - ordovicia:shrink-to-issue, r=Centril ca98bce303 Rollup merge of #56419 - mark-i-m:remove-try, r=Centril 71d76bec1e Rollup merge of #56418 - petrochenkov:wintidy, r=nagisa 17f6fc78c5 Rollup merge of #56416 - GuillaumeGomez:css-body, r=QuietMisdreavus 81752fd85d Rollup merge of #56412 - petrochenkov:extself, r=Centril 65e67025c8 Rollup merge of #56402 - scottmcm:better-marker-trait-example, r=Centril 2cbcd36ca9 Rollup merge of #56401 - scottmcm:vecdeque-resize-with, r=dtolnay 441aaf8110 Rollup merge of #56395 - Centril:stabilize-dbg-macro, r=SimonSapin bf96a7bbed Rollup merge of #56366 - alexreg:stabilise-self_in_typedefs, r=Centril e9a805522c Rollup merge of #56141 - jnqnfe:osstr_len_clarity, r=nagisa 38e21f92f1 Fix link in Weak::new d4b41fa031 Add sync::Weak::ptr_eq 380dd7d47b Add rc::Weak.ptr_eq 7139e1c3ab Auto merge of #56305 - RalfJung:miri, r=oli-obk 2043d30c2e codegen_llvm_back: improve allocations 27b9a94b8a update miri 44b0fd6202 update miri 25c375413a Auto merge of #56394 - cuviper:interrupted-timeout, r=sfackler a563ceb3b9 Auto merge of #56358 - nikic:mergefunc-aliases, r=rkruppe 59e9a1e75a pass the parameter environment to `traits::find_associated_item` b817d0b651 Auto merge of #56110 - varkor:inhabitedness-union-enum, r=cramertj 23abd182d8 Fix invalid line number match 21f2684950 Auto merge of #56198 - bjorn3:cg_ssa_refactor, r=eddyb 3b705a0ece rustbuild: Fix issues with compiler docs 96bf06baf3 Remove not used `DotEq` token 8660eba2b9 Auto merge of #56275 - RalfJung:win-mutex, r=SimonSapin 850d2f1af0 Run name-anon-globals after all other passes bd20718c8f make the C part of compiler-builtins opt-out eb1d2e637e Address review comments 2d4b633be3 Delay gensym creation for "underscore items" until name resolution c658d73401 resolve: Avoid "self-confirming" resolutions in import validation d605e1d055 explicitly control compiler_builts/c feature from libstd ebe69c06b3 avoid MaybeUninit::get_mut where it is not needed f4f8b211a8 let FIXME refer to tracking issue f9fb8d6435 no reason to use mutable references here at all 9abc231212 Auto merge of #56378 - ljedrz:arena_tweaks, r=nagisa 172ec724af Fix "line longer than 100 chars" 0765eb95b5 Auto merge of #56406 - nrc:update, r=kennytm 70371fde17 Add description about `crate` for parse_visibility's comment 95f32f1ebd arena: improve common patterns 1e18cc916f Update issue number of `shrink_to` methods to point the tracking issue af7554d3a2 Auto merge of #56396 - dlrobertson:fix_va_list_tests, r=nikic e7e96921c2 remove some uses of try! 12c9b79b68 Fix failing tidy (line endings on Windows) 08a6cf30f0 Remove unneeded body class selector df0ab06073 Update tracking issue for `extern_crate_self` d311571906 Auto merge of #55275 - petrochenkov:extself, r=eddyb 549bd45e9e resolve: Support aliasing local crate root in extern prelude 7a7445bdfd Update RLS and Rustfmt a3b7a21268 Improve the unstable book example for `#[marker]` 4c2c523a05 Move VecDeque::resize_with out of the impl<T:Clone> block d3ed34824c Auto merge of #56165 - RalfJung:drop-glue-type, r=eddyb,nikomatsakis aef4dbfaa7 Auto merge of #56391 - alexcrichton:less-compare-mode, r=Mark-Simulacrum f4cde5bc4e stabilize std::dbg!(...) f107514aef Deal with EINTR in net timeout tests 8ee62bb239 ci: Only run compare-mode tests on one builder d609fdf775 Updated ui tests. 7bc1255955 Removed chapter from Unstable Book. aa5a4ef59d Removed feature gate. 6000c2e0e1 Use visit_local to find 2PB activations 4f5b8eace1 Remove the `region_map` field from `BorrowSet` d92287a4e9 Fix some rustc doc links 4406391cdc Fix bug in matching on floating-point ranges 0fb52fb538 Separate out precise_pointer_size_matching tests from exhaustive_integer_patterns tests 28ca35fd13 tests: Simplify VaList run-make test d09466ceb1 Auto merge of #56381 - kennytm:rollup, r=kennytm a6c4771520 Rollup merge of #56214 - scalexm:unification, r=nikomatsakis f3be931ab7 Rollup merge of #56337 - phansch:fix_const_ice, r=oli-obk ecfe721620 Rollup merge of #56324 - Zoxc:int-ext, r=nikomatsakis 2584d9216d Rollup merge of #55011 - vi:panic_immediate_abort, r=alexcrichton 440bda4dc8 Rollup merge of #56365 - alexreg:stabilise-self_struct_ctor, r=Centril 8641b8d1e2 Rollup merge of #56373 - steveklabnik:update-books, r=Mark-Simulacrum fb2b2f5582 Rollup merge of #56367 - alexreg:move-feature-gate-tests-1, r=Centril 42bac05d72 Rollup merge of #56364 - dlrobertson:fix_55903, r=oli-obk ddc7ef2d07 Rollup merge of #56360 - alexcrichton:linkchecker-omg, r=pietroalbini 45aaaa70bb Rollup merge of #56355 - Zoxc:inline-things, r=michaelwoerister cb9add6303 Rollup merge of #56349 - davidtwco:issue-55396-inference-extension, r=nagisa 540f4cfa71 Rollup merge of #56341 - frewsxcv:frewsxcv-util-cstr, r=Mark-Simulacrum 78c598a7a2 Rollup merge of #56339 - yui-knk:remove_mir_stats_flag, r=alexcrichton bdb901c865 Rollup merge of #56336 - nnethercote:clean-up-pp, r=nikomatsakis ce00a8dd4d Rollup merge of #56268 - nnethercote:fold_opt_expr-recycle, r=petrochenkov f7c407eb8b Rollup merge of #56216 - SimonSapin:array-tryfrom-slice, r=withoutboats c3950c84c0 Rollup merge of #56131 - ljedrz:assorted, r=RalfJung e40f37e39d Rollup merge of #56014 - euclio:issue-21335, r=nagisa b8198da4d2 Rollup merge of #55821 - ljedrz:cached_key_sorts, r=michaelwoerister a8248976fd Moved feature-gate tests to correct dir. 24717fdaa1 Updated ui tests. d49a8d558f Removed feature gate. ca0806c703 arena: speed up TypedArena::clear 934871aa79 Add the edition guide to doc.rust-lang.org 4c34404940 update nomicon 1560a75f6a Refer to the second borrow as the "second borrow". 4fc5758a67 Update existing tests with more precise error messages e018268ffa Add precise_pointer_size_matching feature f1f6d87eab Stabilise exhaustive_integer_patterns 247ab49668 Pacify tidy 9b847f0f96 Fix const_fn ICE with non-const function pointer 946ea1453d Inline things d48ab693d1 Auto merge of #49219 - eddyb:proc-macro-decouple, r=alexcrichton 3a04d448f9 bootstrap: provide host `rust_test_helpers` to compiletest, not just target. 840c3010f5 tests: ignore wasm32 for run-pass/proc-macro/expand-with-a-macro. dcf736d7ad tests: use alloc instead of libc in unnecessary-extern-crate, to make it work on wasm. f385589dde compiletest: don't pass -Clinker when `// force-host` was requested. b4e504f5b8 tests: use a #![no_std] target crate in run-make/rustc-macro-dep-files. eb2c71cdf2 bootstrap: don't use libraries from MUSL_ROOT on non-musl targets. f083c32da7 tests: support cross-compilation in run-make/rustc-macro-dep-files. 15c77caf59 bootstrap: ensure that `libproc_macro` is available on the host for tests even when cross-compiling. 3369929ddb tests: use `force-host` and `no-prefer-dynamic` in all proc_macro tests. fcca22cb40 tests: move all proc_macro tests from -fulldeps. d3ab4a74ef tests: remove ignore-stage1 where possible in proc_macro tests. 188d2dafcd Statically link proc_macro into proc macros. 67afeef9e4 proc_macro: move to a dependency of libtest. 8cf463bcff proc_macro: move the rustc server to syntax_ext. 38fee305da proc_macro: remove the __internal module. e305994beb proc_macro: introduce a "bridge" between clients (proc macros) and servers (compiler front-ends). 5f19cdc4f8 Changed test for issue 56202 to compile-pass. 027bf8b4de Use opt_def_id instead of having special branch c144dc07e3 Fix ICE with feature self_struct_ctor a0fec9488e Fix panic with outlives in existential type cbf748993f Enable -mergefunc-use-aliases f18a8c6163 Fix exceeding line width limit d3f9788e59 panic_immediate_abort: Fix issues from review 225140ed21 Optimize local linkchecker program fdef3848a0 Add libstd and libcore Cargo features "panic_immediate_abort" 4cce4ffdef Add inline attributes and add unit to CommonTypes 1cdf5df451 Fix error message after rebase 46ef9f820c Fix broken tests 32a8dec889 Clarify undecided semantics d2b340758b Add a test for uninhabitedness changes 682f0f8d80 Consider references and unions potentially inhabited during privacy-respecting inhabitedness checks 1fce415649 Correctly generalize inference variables in `nll_relate` c805e817a9 Fix doc comments b2b82f790b Implement `AggregateOps` `make_solution` does not return any guidance for now 0169dc3f36 Implement `ResolventOps` 3b2cfc510b Handle inference variables in `nll_relate` and use it for chalk fb204cb92f Add template parameter debuginfo to generic types 0124341935 Only consider stem when extension is exe. 3e90a12a8a Auto merge of #49878 - dlrobertson:va_list_pt0, r=eddyb d108a913c7 Move get_static from CodegenCx to Builder ceb29e2ac4 Use implicit deref instead of BuilderMethods::cx() e45733048e Require Deref to CodegenCx for HasCodegen f47505e867 Rename static_bitcast to const_bitcast e8da3c6c32 Remove static_addr_of_mut from cg_ssa aaca5a38ee Rename StaticMethods::static_ptrcast to ConstMethods::const_ptrcast 59682d3e2a Remove static_bitcast from cg_ssa b8d55d45ce Remove an unnecessary reference 2d4c96d1b1 Move IntrinsicCallMethods::call_overflow_intrinsics to BuilderMethods::checked_binop 9a9045573f Remove call_lifetime_intrinsic from cg_ssa 187c4cf257 Use BackendTypes instead of Backend or HasCodegen in a few places 66c3195c4c Rustfmt on cg_ssa/traits 15a5009af0 Don't use llvm intrinsic names in cg_ssa 8698f5c43d Remove __build_diagnostic_array! from cg_utils 2d46ee26fb Remove static_replace_all_uses and statics_to_rauw from cg_ssa 436eff5e84 Make ConstMethods and StaticMethods require BackendTypes instead of Backend b3b6e4dd9b Some refactorings 3dde9e1322 Auto merge of #56298 - tromey:update-and-reenable-lldb, r=alexcrichton e955dbca99 Use raw_entry for more efficient interning 2a91bbac5d Rename conversion util; remove duplicate util in librustc_codegen_llvm. 0c1dc62c1e Auto merge of #56340 - GuillaumeGomez:rollup, r=GuillaumeGomez 3b64f86beb Rollup merge of #56330 - estebank:cleanup-span, r=zackmdavis 1fe2085441 Rollup merge of #56322 - petrochenkov:edlints, r=eddyb f20a1d7b5d Rollup merge of #56321 - jnqnfe:css_nested_list_margin, r=GuillaumeGomez 79f02e4b33 Rollup merge of #56319 - RalfJung:async-mutable-ref, r=cramertj 9a5725c77a Rollup merge of #56312 - oli-obk:const_eval_literal, r=eddyb ad6434ecad Rollup merge of #56294 - polyfloyd:fix-typo-ffi-doc, r=sfackler e3635f2298 Rollup merge of #56289 - marius:patch-1, r=cramertj 87fa7dc69a Rollup merge of #56273 - GuillaumeGomez:iterator-fnmut-missing-link, r=steveklabnik 2d3236c68f Rollup merge of #56257 - mark-i-m:rustc-guide-links, r=nikomatsakis d1b0681bd7 Rollup merge of #56255 - jasonl:update-old-documents, r=michaelwoerister 1b7da84e9d Rollup merge of #56236 - frewsxcv:frewsxcv-unsafe-unsafe, r=cramertj 5bc98a731d Rollup merge of #56223 - Mark-Simulacrum:self-profile-json, r=wesleywiser 796892e0ef Rollup merge of #56220 - estebank:suggest-lifetime-move, r=nikomatsakis 40ec109888 Rollup merge of #56149 - ariasuni:improve-amctime-doc, r=TimNN 143193be6d Rollup merge of #56148 - mark-i-m:rustc-guide-submodule, r=nikomatsakis c23e4ea8dc Rollup merge of #56127 - rust-lang:oli-obk-patch-1, r=nikomatsakis 3ed113cece Rollup merge of #56124 - antoine-de:fix_read_to_end_doc_mistake, r=TimNN aebf07e3eb Rollup merge of #56114 - varkor:nonexhaustive-backticks, r=nikomatsakis 36a4abf6e0 Rollup merge of #56080 - mark-i-m:patch-2, r=steveklabnik 5d395add7f Rollup merge of #56023 - vorner:doc/atomic-ordering-strip, r=@stjepang 8e7a8b81e8 Rollup merge of #56021 - RalfJung:track-features, r=oli-obk 8ca3cb90b3 Rollup merge of #55391 - matthiaskrgr:bootstrap_cleanup, r=TimNN 8f9a093f52 Fix another related ICE 71f643e5bf Remove not used option 147e60c5f8 Auto merge of #56313 - nikic:update-llvm, r=alexcrichton 28cc3405a8 r/\t/ / 9c282b44c2 Support arbitrary slice constants for pattern deaggregation 7df1d9f656 Allow constants of byte slice type as patterns 5a03532ea9 Auto merge of #56245 - mark-i-m:stabilize_ques_kleene, r=alexcrichton 64cd645d14 Split up `pretty_print` and `print`. 787959c20d Use `Cow` in `Token::String`. deb9195e57 Remove `huge_word` and `zero_word`. 6c80f7c4fc Fix whitespace in `pp.rs`. a49316ddc9 Auto merge of #56329 - eddyb:load-operand-overaligned, r=nikomatsakis 9139374181 Fix Tidy error 5045e12bd7 Filter out self-referential projection predicates afe41078ad Add arrow to the crate select box 5f387a6032 Auto merge of #56300 - nikic:issue-56267, r=eddyb 66a2c39290 Clean up span in non-trailing `..` suggestion 51cf4e9e91 rustc_codegen_llvm: don't overalign loads of pair operands. d77edb6458 resolve: Fix false-positives from lint `absolute_paths_not_starting_with_crate` 8062c7ae4b Add test for crate filtering dd717deccb Add crate filtering 46a683111d fix futures aliasing mutable and shared ref 1a84d211a2 Check all substitution parameters for inference variables f57247c48c Ensure that Rusdoc discovers all necessary auto trait bounds afb8cba5fc Move hir::Lit -> ty::Const conversion into its own file 230f5d5676 rustdoc: Fix inlining reexporting bang-macros 50b4eefcf5 rustdoc: Fix inlining reexported custom derives c013de4f9b rustdoc: add margin-bottom spacing to nested lists 2ec76e76e4 Update LLVM 40412dc09a Deduplicate literal -> constant lowering 8cab350c85 Don't use ReErased in deferred sizedness checking. dd593d3ab8 get_ref -> get_mut 965fdb0294 fix build 12d90aa949 put the MaybeUninit inside the UnsafeCell 5d7717360c fix test d8190afbcb Fix alignment of stores to scalar pair b68fc18c45 Auto merge of #56293 - matthiaskrgr:clippy, r=oli-obk e63bd91895 Fix a typo in the documentation of std::ffi 097b5db5f6 Move feature enable in ptr::hash doc example 2dd48f834f submodules: update clippy from 754b4c07 to b2601beb 9755410f73 Try to fix ptr::hash's doc example 999595f640 Re-enable lldb aeede9eb46 fix test 59ae93daed remove uses of feature gate f3b29ca1c2 remove unstable book entry e97edad935 update tests 32aafb2203 remove some unused vars a542e48871 remove feature gate c75ed34732 move feature gate to accepted 400c2bc5ed Auto merge of #56264 - petrochenkov:typonly, r=nikomatsakis 73b656bbb3 Fix small typo in comment 4a7ffe2646 Fix issue number afb4fbd951 Add an assert_eq in ptr::hash's doc example 81251491dd Pick a better variable name for ptr::hash 7b429b0440 Fix stability attribute for ptr::hash aeff91d977 Auto merge of #56251 - scalexm:root-universe, r=nikomatsakis a4f12344c6 add comments explaining our uses of get_ref/get_mut for MaybeUninit 2f2f37983d add missing feature 9d35e57907 Normalize type before deferred sizedness checking. a8f9302047 avoid features_untracked a810275150 fix build 10e2c729ea Auto merge of #55402 - estebank:macro-eof-2, r=nikomatsakis cd2e98dbd3 resolve: Extern prelude is for type namespace only 691a7f8e2b Auto merge of #56094 - RalfJung:memory-data-revived, r=oli-obk 6739c0e935 Add missing doc link f2af41ab8c use MaybeUninit instead of mem::uninitialized for Windows Mutex d4a6e739f3 Use sort_by_cached_key when key the function is not trivial/free 45205f2ac1 Auto merge of #56262 - petrochenkov:nabsedihyg, r=petrochenkov e9e084f5fa test: Add basic test for VaList 08140878fe libcore: Add va_list lang item and intrinsics 75d937c49b Auto merge of #54668 - RalfJung:use-maybe-uninit, r=SimonSapin 6f028fe8e0 Specify suggestion applicability 6f13708299 resolve: Suggest `crate::` for resolving ambiguities when appropriate d1862b4196 resolve: Fallback to extern prelude in 2015 imports used from global 2018 edition 5e121756ef resolve: Generalize `early_resolve_ident_in_lexical_scope` slightly c06e69ee70 resolve: Fallback to uniform paths in 2015 imports used from global 2018 edition dae4c7b1ff resolve: Implement edition hygiene for imports and absolute paths 5558c07c6e Fix ptr::hex doc example fba116fc5f Remove duplicate tests for uniform paths 6494f1e60e rustc-guide has moved a1865edb75 Add rustc-guide as a submodule cd20be5091 Update outdated code comments in StringReader efb2949b93 Put all existential ty vars in the `ROOT` universe 86d20f9342 FIXME is the new TODO 47b5e23e6b Introduce ptr::hash for references 769d7115fe add test for issue #21335 45dfe43887 Emit one diagnostic for multiple misplaced lifetimes cc466851bc Remove unsafe `unsafe` inner function. 6bfb46e4ac Auto merge of #55835 - alexcrichton:llvm-upgrade, r=nikomatsakis b51632e3f0 Auto merge of #56070 - oli-obk:const_let, r=eddyb 7215963e56 Temporarily disable LLDB cc9c91d385 Pass `--export-dynamic` to LLD for wasm c86b1529a5 wasm: Pass `--no-demangle` to LLD bf01bcb451 Conditionally compile in only the extra argument. a43a7a0778 Make Rustc build with LLVM trunk. ae5b350d77 Handle some renamed ThinLTO functions 7be0b23b69 Upgrade to LLVM trunk 423291f14b Auto merge of #55705 - ethanboxx:master, r=SimonSapin 2d2b7c01eb Make JSON output from -Zprofile-json valid c14ab13e61 Auto merge of #56194 - eddyb:top-unhack, r=alexcrichton 057e6d3a35 Add TryFrom<&[T]> for [T; $N] where T: Copy 6aa4eb923f HACK(eddyb) Cargo.toml: also exclude the `obj` directory from the workspace. d9ca24e870 Cargo.toml: exclude the `build` directory from the workspace. e281446261 Try to make top-level Cargo.toml work without __CARGO_TEST_ROOT. 234d043d18 Move lifetimes before the *first* type argument 79ee8f329d Suggest appropriate place for lifetime when declared after type arguments 121e5e806e fix missing borrow 07b97a486f Use a reference rather than take ownership 6acbb5b65c Auto merge of #55527 - sgeisler:time-checked-add, r=sfackler 5bd451b265 Auto merge of #56215 - pietroalbini:rollup, r=pietroalbini cd17b1d4b6 Rollup merge of #56211 - petrochenkov:fwd, r=petrochenkov baf45d6d90 Rollup merge of #56210 - RalfJung:c_str, r=oli-obk d21d510dde Rollup merge of #56207 - SimonSapin:int_to_from_bytes, r=nagisa dcae83b6a3 Rollup merge of #56204 - estebank:suggest-variant, r=zackmdavis 686257c256 Rollup merge of #56176 - GuillaumeGomez:panic-setup-msg, r=nagisa e03fa3eec6 Rollup merge of #56170 - wesleywiser:fix_self_profiler_windows, r=estebank 989678e525 Rollup merge of #56151 - alexcrichton:move-out-flaky-test, r=nagisa ed6c7b751d Rollup merge of #56144 - tromey:Bug-55771-btreemap, r=alexcrichton 6398df1520 Rollup merge of #56101 - frewsxcv:frewsxcv-dyn, r=steveklabnik 45e5a856a6 Rollup merge of #56100 - RalfJung:visiting-generators, r=oli-obk ab5e45ae6b Rollup merge of #56075 - alexcrichton:wasm-producer-section, r=estebank b16d8eb3f2 Rollup merge of #56072 - da-x:stabilize-literal-matcher, r=petrochenkov 6c2513c0d3 Rollup merge of #56045 - qnighy:additional-sizedness, r=cramertj 1aa3ffaf99 Rollup merge of #56024 - oli-obk:const_fn_collect_inner, r=michaelwoerister fe548e311a resolve: Fix some more asserts in import validation e593431bc7 resolve: Fix bad span arithmetics in import conflict diagnostics d4a78da543 resolve: Prohibit relative paths in visibilities on 2018 edition 2472e83250 Typo e9bca7a993 Auto merge of #55906 - nnethercote:rm-OpenSnapshot-CommittedSnapshot, r=nikomatsakis a6ea01f239 fix length of slice returned from read_c_str 0fac350f99 yay for NLL af54eb2916 read_c_str should call the AllocationExtra hooks 349271ab2c Typo fb8b1e3989 accept undef in raw pointers, for consistency with integers 261faf3ce2 machine hooks for stack push and pop, frame machine data 53ed3b7956 make memory allocation hook infallible 6cca7165ea pass MemoryExtra to find_foreign_static and adjust_static_allocation; they might have to create allocations 4c090fe310 bring back MemoryExtra 68a26ec647 Stabilize the int_to_from_bytes feature 94967ae8c1 Remove `OpenSnapshot` and `CommittedSnapshot` markers from `RegionConstraintCollector`. 2d68fa07bf Remove `OpenSnapshot` and `CommittedSnapshot` markers from `SnapshotMap`. f23c969492 Introduce `in_snapshot` and `assert_open_snapshot` methods. f5624e41e8 Make `commit` and `rollback_to` methods take ownership of the snapshots. 7fe09a6551 Replace a `.truncate(0)` call with `.clear()`. c86bbd4830 Rename `UndoLogEntry` as `UndoLog`. 9847b5cfcb Remove `insert_noop`. 1e34dfce6f Update to `ena` 0.11.0. abe19a7305 Auto merge of #55921 - scalexm:placeholders, r=nikomatsakis 37961dbd2d Auto merge of #55959 - matthewjasper:remove-end-region, r=nikomatsakis dce1c4530e [Windows] Work around non-monotonic clocks in the self-profiler 6b338e034a Suggest correct enum variant on typo 2dd94c133e Auto merge of #55915 - oli-obk:miri_engine_refactoring, r=RalfJung b8a30f04cd Try to work around #53332 in `src/test/run-pass/rustc-rust-log.rs` edaac35d67 Auto merge of #56201 - kennytm:revert-55935, r=alexcrichton 91f8e3721c Revert "appveyor: Use VS2017 for all our images" 1b432a612f Add test for source files feature 8d67de4e91 Don't show file sidebar by default b853252bcd Rebase fallout 360f9888bc update miri submodule 3220c0ce1a Explain why vtable generation needs no alignment checks 22872196f5 Factor out mplace offsetting into its own method 972d798881 Document `Allocation` cb8fa33572 tidy a5ef2d1b54 Array and slice projections need to update the place alignment 10102d1f0a comment nit 9b8e82ad24 Use correct alignment checks for scalars and zsts, too 927c5aab47 Use correct alignment for fat pointer extra part 9d57adf2ba Explain {read,write}_scalar failure to cope with zsts 8b04b09869 Move alignment checks out of `Allocation` 1c08ced995 Explain early abort legality d3139b9c41 Rebase fallout b820cc79a9 Clean up array/slice of primitive validation 65b702c6b1 Update miri submodule 87bd5d13d8 Remove stderr file, because the test passes now ef332959dc Reintroduce zst-slice reading `read_bytes` method on `Memory` ebf03363f2 Properly test for int pointers in fat pointers to str slices of zero chars cc2f46e55a Reorder methods in `allocation.rs` 20dee47a66 Add regression test for integral pointers in zst str slice fat pointers df1ed0c2a6 Make a method that doesn't need `Self` a free function instead a835555474 Make zst accesses in allocations take the regular path. 3a0e8254b0 Remove unnecessary `Result` (function always returned `Ok`) 07e7804110 Adjust rustc_mir::interpret to changes in `Allocation`/`Memory` methods 9ecde5712e Move some byte and scalar accessors from `Memory` to `Allocation` ad11856431 Fiddle a `HasDataLayout` through the allocation methods 04210f3e16 Access `self` instead of `alloc` c392fbbbf1 Adjust generics to `Allocation` parameters 7c9d786e50 Move alignment and bounds check from `Memory` to `Allocation` d98c46ce57 Move undef mask methods from `Memory` to `Allocation` eb30ce8acb Move relocation methods from `Memory` to `Allocation` d40a7713d3 Preliminary code adjustment to let the compiler complain about missing methods 98cd2ad4ea Move some methods from `Memory` to `Allocation` e87f8cc49b Source sidebar improvements 93520d2ad1 Add source file sidebar 4478dced47 Fix NLL ui test c0f98e8390 Fix `ChalkInferenceContext::into_hh_goal` 5b2baa8336 Implement some instantiate / canonical routines 95861b1590 Move `BoundTy` debruijn index to the `TyKind` enum variant 6bf17d249b Instantiate all bound vars universally cdb96be11e Handle placeholder types in canonicalization 91623ca640 Add `HAS_TY_PLACEHOLDER` flag da3def3ebf Rename some occurences of `skol` to `placeholder` 05995a8522 Introduce `TyKind::Placeholder` variant 7401e3def5 Distinguish between placeholder kinds d011313d84 Reword EOF in macro arm message 950a3edf27 Fix proc-macro test after internal API change c45871ba02 Keep label on moved spans and point at macro invocation on parse error 76449d86c0 Point at macro arm when it doesn't expand to an expression e5cd1edfa1 Reword incorrect macro invocation primary label 34bd86a3fd Add label when replacing primary DUMMY_SP in macro expansion ea9ccb6046 Point at end of macro arm when encountering EOF 4632cf2a2e Auto merge of #55935 - alexcrichton:vs2017, r=Mark-Simulacrum 59786b020b use more inlining, and force some of it 5e27ee76b6 use MaybeUninit in core::ptr::swap_nonoverlapping_bytes 3fb03d0650 use MaybeUninit in core::ptr::swap 0bb2e2d6d4 use MaybeUninit in core::ptr::{read,read_unaligned} 525e8f4368 use MaybeUninit in core::slice::rotate f950c2cbd5 use MaybeUninit in core::slice::sort 44c135b6a9 use MaybeUninit in core::fmt ebb1a48b41 Merge branch 'master' into frewsxcv-dyn 1f57e48411 Auto merge of #56186 - kennytm:rollup, r=kennytm 36189a2739 Rollup merge of #56168 - sfackler:raw-entry-tracking, r=kennytm a56b0ab4be Rollup merge of #56163 - pietroalbini:1.30.1-relnotes-master, r=pietroalbini 69d4901846 Rollup merge of #56162 - adrianheine:patch-1, r=withoutboats c9870a4fe7 Rollup merge of #56154 - petrhosek:fuchsia-linker-args, r=alexcrichton bf72971abc Rollup merge of #56120 - SergioBenitez:subspan, r=alexcrichton 97e6007932 Rollup merge of #56116 - alexcrichton:tarball-calng, r=kennytm e0025df3fd Rollup merge of #56097 - ogoffart:union-abi, r=eddyb fb33fa4916 Rollup merge of #56091 - wesleywiser:fix_self_profiler_json, r=petrochenkov 1b707f78f5 Rollup merge of #56048 - bjorn3:cg_ssa_sysroot, r=eddyb 419a101d9c Rollup merge of #56022 - RalfJung:validate-before-jump, r=oli-obk 12f6a42f61 Rollup merge of #55945 - oli-obk:static_assert_arg_type, r=michaelwoerister ef2cbec5a6 Rollup merge of #55869 - SimonSapin:iterate, r=alexcrichton 738afd4f69 Rollup merge of #55838 - dralley:fix-cfg-step, r=Kimundi 91bceb8fc2 Rollup merge of #55767 - tromey:disable-some-pretty-printers, r=alexcrichton 821bad3a5b Auto merge of #56184 - matthiaskrgr:clippy, r=oli-obk 2598a7a56d submodules: update clippy from 2f6881c6 to 754b4c07 aecbcd1ce2 Auto merge of #55808 - estebank:type-arguments, r=petrochenkov 6a2d1b4e15 Auto merge of #54071 - eddyb:alignsssss, r=oli-obk 4381772695 Fix invalid panic setup message 510f836d23 Do not point at associated types from other crates a5d35631fe Reword and fix test 48fa974211 Suggest correct syntax when writing type arg instead of assoc type b6f4b29c6d Point at the associated type's def span 286f7ae1dd Join multiple E0191 errors in the same location under a single diagnostic abdcb868ff Point at every unexpected lifetime and type argument in E0107 00e03ee574 Auto merge of #56143 - nikomatsakis:issue-56128-segment-id-ice-nightly, r=petrochenkov 60e4158188 Move fake rustc_codegen_ssa dependency from rustc_driver to rustc-main d6d8a330f8 Add rustc_codegen_ssa to sysroot b319715456 Disable the self-profiler unless the `-Z self-profile` flag is set d0f99ddefa Fix the tracking issue for hash_raw_entry d9de72fcac miri: restrict fn argument punning to Rust ABI e1ca4f63f4 fix codegen-units tests c08840d5c3 Auto merge of #53586 - eddyb:top-lock, r=alexcrichton af9b057156 drop glue takes in mutable references, it should reflect that in its type 01fd0012a1 Include changes from 1.30.1 in release notes 5f2a173f75 explain how this works b83150e6ac only reset non-restricted visibilities 37f719e0d3 std::str Adapt documentation to reality dae6c93641 Auto merge of #56136 - matthiaskrgr:clippy, r=oli-obk 8e814ae608 submodules: update clippy from f5d868c9 to 2f6881c6 7c166f54b2 Move Cargo.{toml,lock} to the repository root directory. 93fa2d76bd Auto merge of #56155 - GuillaumeGomez:rollup, r=GuillaumeGomez 61d7b3e9b0 Rollup merge of #56126 - Turbo87:bench-parse, r=alexcrichton 6afecfd785 Rollup merge of #56106 - bjorn3:patch-1, r=alexcrichton 1bc97081a5 Rollup merge of #56078 - ehuss:fix-panic-opt-msg, r=alexcrichton b473157293 Rollup merge of #56067 - jethrogb:jb/sgx-target-spec, r=alexcrichton 1646fc907e Rollup merge of #56063 - 0xrgb:patch-1, r=joshtriplett 75d226ed76 Rollup merge of #56002 - Axary:master, r=estebank 636f0a9a1d Rollup merge of #55980 - csmoe:issue-55891, r=estebank fa3941cb99 Rollup merge of #55961 - tromey:Bug-55944-vecdeque, r=nikomatsakis 89e0fcee40 Rollup merge of #55784 - meltinglava:master, r=KodrAus 1c57f0ab9c Rollup merge of #55485 - petertodd:2018-10-manuallydrop-deref, r=TimNN 9aedfd5a3b Rollup merge of #55367 - GuillaumeGomez:private-item-doc-test-lint, r=QuietMisdreavus f41423c75f Pass additional linker flags when targeting Fuchsia f3adec65dd Auto merge of #53918 - Havvy:doc-sort-by, r=GuillaumeGomez d1cd4e8d0d Move a flaky process test out of libstd 5b4747ded7 rustc_target: avoid using AbiAndPrefAlign where possible. 4bec59c93b Auto merge of #56147 - petrochenkov:impice, r=nikomatsakis 3ce8d444af rustc_target: separate out an individual Align from AbiAndPrefAlign. d56e892085 rustc_target: rename abi::Align to AbiAndPrefAlign. ec3ac112e1 Make std::os::unix/linux::fs::MetadataExt::a/m/ctime* documentation clearer ebf3c8d8e9 add compile-pass annotation 6612100de5 Auto merge of #56065 - oli-obk:min_const_fn_loop_ice, r=davidtwco c746ecfa01 Add test for sidebar link generation 1dc1124979 resolve: Fix some asserts in import validation 9cdf4911db hack: ignore list-stems for pub lint d4ee1c93ff Fix BTreeSet and BTreeMap gdb pretty-printers 4c7ce7c897 pass vis by shared reference 2bd2fc9418 add regression test 4687eebc28 preserve the original visibility for the "list stem" node 0b9f19dff1 Auto merge of #56134 - oli-obk:clippy_documentation, r=nrc b8ae7b801b macro_literal_matcher: fixes per petrochenkov's review fc284c1eee Stabilize macro_literal_matcher 5af8f1d8d7 Fixes primitive sidebar link generation c209ed8435 Improve no result found sentence in doc search a0a47904d6 renumber segment ids for visibilities whenever we clone them 40f8094003 add some `debug!` into lowering d0a174d41b track the span for each id so that we can give a nice ICE a1e9c7fc2e OsStr: clarify `len()` method documentation 0591ff7525 OsString: mention storage form in discussion f039872766 Enclose type in backticks for "reached the recursion limit while auto-dereferencing" error 910ec6d97f Auto merge of #56118 - steveklabnik:update-books, r=alexcrichton 33efce1c2f Forward rust version number to tools c6a803a286 Modify doc to reflect the unsized-locals improvement. 2ff6ffc872 Add tests for unsized-locals functions stability. 8ab5be13a3 Add tests verifying #50940. 8b426232ee Check arg/ret sizedness at ExprKind::Path. 682b33a110 Add require_type_is_sized_deferred. 7933628de5 Remove trailing whitespace ee7bb94044 Auto merge of #56117 - petrochenkov:iempty, r=eddyb 925274ab70 Update as_temp.rs e8dafbaf10 Adjust doc comments d7b3f5c6ae update various stdlib docs 5a2a251b9c Update as_temp.rs 83388e84c2 Update an outdated comment in mir building 6db8c6c6d9 Explain why we do not overwrite qualification of locals e538a4a7de core/benches/num: Add `from_str/from_str_radix()` benchmarks 22aebd57c8 Add regression test for overwriting qualifs by assignment e05b61ccd8 Fix a comment 1ed91951c3 fix small doc mistake 42a3f730c7 Tidy 3c290a5326 Ensure assignments don't allow skipping projection checks 301ce8b2aa Properly assign to aggregate fields 591607d237 String: add a FIXME to from_utf16 464c9da9c2 serialize: preallocate VecDeque in Decodable::decode 5c747eb326 Update style of comments 88a708dd6a Update comments 072bca3ff5 Remove 'unsafe' comments 700c83bc05 Document `From` implementations 9e2e57511f Add x86_64-fortanix-unknown-sgx target to the compiler 289ad6e992 Auto merge of #52591 - eddyb:functional-snakes, r=oli-obk 7683180be5 rustc: implement and use Default on more types. da622a3796 rustc: remove {FxHash,Node,DefId,HirId,ItemLocal}{Map,Set} "constructor" fns. 09e7051b7e Add unstable Literal::subspan(). 780658a464 Auto merge of #56032 - petrochenkov:stabecip, r=nikomatsakis 57b7d55591 fix more links 0579ef0166 fix rustbuild to build all the books 240a55ce50 update books 1e4cf740cf resolve: Make "empty import canaries" invisible from other crates 25d0418bd7 ci: Download clang/lldb from tarballs d4934c748f Add a couple more tests 1af682a557 Stabilize `extern_crate_item_prelude` b99f9f775c Enclose type in backticks for "non-exhaustive patterns" error f1e2fa8f04 Auto merge of #56111 - nrc:update, r=kennytm 595bea6b33 Update RLS and Rustfmt c4cf115056 Auto merge of #55720 - RalfJung:const-eval-raw, r=oli-obk a4279a07e2 Capitalize 8a5bbd9a4e Add tracking issue for unfold and successors 641c4909e4 Add std::iter::successors 22228186c0 `Copy` is best avoided on iterators 544ad37753 Unfold<St, F>: Debug without F: Debug 48aae09e9f Add std::iter::unfold 9ce7b11e7c Remove incorrect doc comment in rustc_mir::monomorphize::item 8a0909df79 Remove incorrect doc comment 6befe6784f treat generator fields like unions 3991bfbbc2 Auto merge of #55663 - varkor:must_use-traits, r=estebank 7f1077700c fix comment 033cbfec4d Incorporate `dyn` into more comments and docs. 6eeedbcd70 generator fields are not necessarily initialized 88d60941da improve error note 4c21f66c1d Add comments and rename a local variable 15e6613281 Auto merge of #55678 - Aaronepower:master, r=Mark-Simulacrum 37fcd5cad5 Grammar nit 3e081c7e82 Trailing newline 7d96f2c481 Document qualify_consts more 86d41350c7 Fix invalid bitcast taking bool out of a union represented as a scalar f70abe8d07 Add sanity test for promotion and `const_let` 6bcb0d6152 Explain missing error in test f98235ed9d Document runtime static mutation checks 6674db4887 Reuse the `P` in `InvocationCollector::fold_{,opt_}expr`. 9240ad4571 Update releases to add rename dependencies feature 7a0cef74a8 Auto merge of #56081 - alexcrichton:update-manifest, r=nrc c7dc868ed7 Fix json output in the self-profiler 046e054a99 Auto merge of #55983 - oli-obk:static_, r=Mark-Simulacrum 31fa30145e Auto merge of #56049 - newpavlov:revert_51601, r=sfackler 3c67ed4500 Add temporary renames to manifests for rustfmt/clippy 612febcc4b explain why we can use raw c462e44c13 we now do proper validation on scalars 28cc944530 Reduce the amount of bold text at doc.rust-lang.org ba82f54b04 use RawConst in miri b50c1b243e Make const_eval_raw query return just an AllocId b8da719024 Fix error message for `-C panic=xxx`. 089a50411f Encode a custom "producers" section in wasm files 5aff30734b Auto merge of #55971 - SergioBenitez:skip-non-semantic, r=alexcrichton 737dec0ec1 Fix change to predicates 7d5b5ff24d Update nll stderr files a44e446551 Add `override_export_symbols` option to Rust target specification 0ab70fab19 Fix typo in #[must_use] message 9178eb41d3 Handle trait objects 122886842e Test for #[must_use] on traits cb5520bc48 Recognise #[must_use] on traits, affecting impl Trait b55717f9b0 Use general uninhabitedness checking 39852cae2b Auto merge of #56060 - nrc:save-path-fallback, r=zackmdavis 59eff14120 Also catch static mutation at evaluation time 30178b422a Disable some pretty-printers when gdb is rust-enabled 9e8a982a23 Auto merge of #56051 - pietroalbini:rollup, r=pietroalbini 8cea658b90 Rollup merge of #56059 - alexcrichton:fix-tests, r=sfackler 10565c45ac Rollup merge of #56043 - nikomatsakis:issue-55756-via-outlives, r=eddyb 27519c175a Rollup merge of #56027 - Xanewok:docs-backtick, r=QuietMisdreavus f5dc12ebfc Rollup merge of #56016 - scottmcm:vecdeque-resize-with, r=joshtriplett 2a68c0075a Rollup merge of #56012 - RalfJung:unsafe-cell, r=nikomatsakis 05ae505a4c Rollup merge of #56011 - CBenoit:master, r=QuietMisdreavus c0d48ce39a Rollup merge of #56007 - RalfJung:non-const-call, r=oli-obk cc6473d342 Rollup merge of #55970 - RalfJung:miri-backtrace, r=@oli-obk 6ecbb05d76 Rollup merge of #55968 - ehuss:non-mod-rs-tests, r=petrochenkov 318a38e2ea Rollup merge of #55963 - stepancheg:mpsc-take-2, r=alexcrichton f13d16621e Rollup merge of #55962 - QuietMisdreavus:tricky-spans, r=GuillaumeGomez 989d06a76d Rollup merge of #55953 - blitzerr:master, r=nikomatsakis 32e4eb9cb9 Rollup merge of #55952 - michaelwoerister:newer-clang, r=alexcrichton fc30ab4da6 Rollup merge of #55949 - ljedrz:return_impl_Iterator_from_Predicate_walk_tys, r=oli-obk bc543d7e6c Allow assignments in const contexts 8ee9711a6c Replace the ICEing on const fn loops with an error 7c9bcc5266 Update any.rs documentation using keyword dyn 99d1513ed3 save-analysis: fallback to using path id 86073253d5 Increase `Duration` approximate equal threshold to 1us 7e82eda000 Auto merge of #56042 - petrochenkov:nuni, r=petrochenkov 715d83fe01 Rollup merge of #55923 - Zeegomo:master, r=estebank 5e2ff63e29 Rollup merge of #55919 - Turbo87:num-tests, r=dtolnay c87c31b111 Rollup merge of #55916 - RalfJung:mut-visitor, r=oli-obk 131a7553e1 Rollup merge of #55894 - RalfJung:validation-enums, r=oli-obk 3aeac24048 Rollup merge of #55867 - RalfJung:dont-panic, r=Mark-Simulacrum 9577734ff3 Rollup merge of #55862 - zackmdavis:but_will_they_come_when_you_call_them, r=estebank 7130947918 Rollup merge of #55857 - andjo403:rmdep, r=Mark-Simulacrum 4a52c5625c Rollup merge of #55834 - ogoffart:union-abi, r=eddyb 9c3e8d340f Rollup merge of #55827 - ljedrz:various_stashed, r=alexcrichton 21ff709954 Rollup merge of #55564 - smaeul:test-fixes-2, r=alexcrichton 36e1d9f3ed Rollup merge of #55562 - smaeul:powerpc-linux-musl, r=alexcrichton a9b791b3c0 Auto merge of #55672 - RalfJung:miri-extern-types, r=eddyb 6357021294 fix test 6ad61b9c3b tests a5b4cb2991 remove "approx env bounds" if we already know from trait 126b71f690 revert 13c9439925 Auto merge of #56017 - alexcrichton:debug-test, r=alexcrichton d1c2cbf90a Auto merge of #55999 - alexcrichton:update-cargo, r=nrc 1d7fc0ca50 Simplify MIR drop generation 38025e0dca Fix rebase 6027e0810f Only handle ReVar regions in NLL borrowck b16985a354 Remove mir::StatementKind::EndRegion 139d109241 Add a couple more tests + address review comments 59464709f7 resolve: Refactor away `DeterminacyExt` a5f9bd02b1 resolve: Future-proof against imports referring to local variables and generic parameters 4fc3c13e32 resolve: Avoid sentence breaks in diagnostics f492e9421f resolve: Support resolving macros without leaving traces 0e8a97f8e7 resolve: Avoid marking `extern crate` items as used in certain cases 8e88c3470a resolve: Reintroduce feature gate for uniform paths in imports a38f903114 Fix ICEs from imports of items not defined in modules cfd762954b resolve: Tweak some articles in ambiguity diagnostics cfe81559ee resolve: Recover "did you mean" suggestions in imports 4c5d822a8b resolve: Check resolution consistency for import paths and multi-segment macro paths 07af4ec7a2 resolve: Resolve single-segment imports using in-scope resolution on 2018 edition 1cfd08c0c4 resolve: More precise determinacy tracking during import/macro resolution f0ea1c6f1e resolve: Improve diagnostics for resolution ambiguities 9d7d9ada6d resolve: Simplify ambiguity checking for built-in attributes e6739fe274 resolve: Resolve multi-segment imports using in-scope resolution on 2018 edition 67feeebfad resolve: Stop generating uniform path canaries cc63bd47ef atomic::Ordering: Get rid of misleading parts of intro cdb1a799f8 Add VecDeque::resize_with 7a99b6db15 std: Add debugging for a failing test on appveyor eb18ddd8f4 Don't auto-inline `const fn` 5fc63ce480 docs: Add missing backtick in object_safety.rs docs ef99b57b13 Refactor local monomorphization logic to be easier to comprehend bcf82efe08 deallocate locals before validation, to catch dangling references f37247f885 Auto merge of #56003 - nikomatsakis:issue-54467-infer-outlives-bounds-and-trait-objects, r=eddyb 3d33d05c81 We're looking at the miri memory for constants instead of their initializers' MIR 1d808d106b When popping in CTFE, perform validation before jumping to next statement to have a better span for the error 8e13e433c6 tidy check fix 2b7c3fb725 add test for #[test] attribute only allowed on non associated functions d93e5b04f4 reserve whitespaces between prefix and pipe 25d46f3091 add comment explaining why what we do is legal 01127ca666 Update Cargo submodule 5bfdcc1ab1 remove stray file with UI testing output a7b312f825 erase the tag on casts involving (raw) pointers 78eb516dda Ignore non-semantic tokens for 'probably_eq' streams. f6e9485bfc Auto merge of #55627 - sunfishcode:cg-llvm-gen, r=nikomatsakis 41434e001b avoid shared ref in UnsafeCell::get ee821736cc Auto merge of #55936 - nrc:save-rename, r=eddyb 0c0478d57a adjust remaining tests c1221e2072 Replace data.clone() by Arc::clone(&data) in mutex doc. 2be930bd03 fix tidy (remove whitespace) fe23ffbda0 improve error when self is used as not the first argument 646d68f585 add a note to the error message 4c4aff9b3d remove license 303dbccf04 CTFE: dynamically make sure we do not call non-const-fn 6575988d8e handle trait objects formed from traits with `Self::Foo: 'a` clauses 0d744ec6ec improve debug output related to bound calculation 675319e558 lint if a private item has doctests 756f84d7ce [eddyb] rustc_codegen_llvm: remove unused parametrization of `CodegenCx` and `Builder` over `Value`s. 0b569249c8 [eddyb] rustc_codegen_ssa: rename `interfaces` to `traits`. d1410ada92 [eddyb] rustc_codegen_ssa: avoid a `Clone` bound on `TargetMachine`. 47c84c4234 [eddyb] rustc_codegen_llvm: remove unnecessary `'a` from `LlvmCodegenBackend` impls. 9f49a2626e [eddyb] rustc_codegen_utils: remove extraneous `#![allow(dead_code)]`. 9bb6663431 [eddyb] rustc_codegen_ssa: handle LLVM unsafety correctly. bf7f8cd3fc Added README explaining the refactoring b9e5cf99a9 Separating the back folder between backend-agnostic and LLVM-specific code b25b804013 Added default impl for DerivedTypeMethods + empty impl for Cranelift BaseTypeMethods 54dd3a47fd All Builder methods now take &mut self instead of &self 1ebdfbb026 Added some docs + start to &mut self builder methods 015e4441f5 Finished moving backend-agnostic code to rustc_codegen_ssa c0a428ee70 Great separation of librustc_codegen_llvm: librustc_codegen_ssa compiles 915382f730 Moved DeclareMethods, MiscMethods and StaticMethods c9f26c2155 Beginning of moving all backend-agnostic code to rustc_codegen_ssa 218e35efa1 eat CloseDelim 80c2101b20 change expected error message b02e5cce16 Moved Backend interface into rustc_codegen_utils b06836e71a [eddyb/rebase cleanup] move type_{needs_drop,is_sized,is_freeze} to rustc_codegen_utils 35b40f51fb [eddyb/rebase cleanup] abstracted Funclet 566fa4d003 Moved common.rs enums 39fd4d9274 Starting to move backend-agnostic code into codegen_utils IntPredicate moved 4ba09ab8d2 Added compile codegen to backend trait 6819e6e6e1 Preparing the generalization of base:compile_coodegen_unit 91a2a80692 Renamed lifetimes for better understanding 8d530db2c5 Generalized base:codegen_crate 97825a36be Move doc to trait declarations ac34068ed9 Generalized base:maybe_create_entry_wrapper b14f3e5490 Adapt code to latest rustc master changes 441a7c1092 Generalized mono_item.rs and base.rs:codegen_instance 6a993fe353 Generalized mir::codegen_mir (and all subsequent functions) cbe31a4229 Generalized base::coerce_unsized_into 78dd95f4c7 Generalized base::unsize_thin_ptr 034f69753b Generalized base::unsized_info 484e07c231 [eddyb/rebase cleanup] s/&self./self. 0a1c50955b Traitified IntrinsicCallMethods a5aeb8edd6 Transfered memcpy and memset to BuilderMethods 3c082a23e8 Added StaticMethods trait d77e34f35b Generalized memset and memcpy 0514c7b1b2 Generalized some base.rs methods c487b825b0 Attempt at including CodegenCx within Builder with Associated types 1929ac2007 Fixed typos 4787b7cac9 Removed phantomdata no longer necessary Because CodegenContext doesn't implement Backend anymore a1d0d4f943 Removing LLVM content from CommonMethods -> ConstMethods e224f063e8 Prefixed type methods & removed trait impl for write::CodegenContext 6d42574b7a Prefixed const methods with "const" instead of "c" 730b13ab51 Traitification of type_ methods The methods are now attached to CodegenCx instead of Type 5f28e0a0b6 Added definition of type trait 3e77f2fc4f Use the method form for CodegenCx everywhere 6c5b990c5f All CommonMethods now real methods (not static) 33eee83737 Removed code duplication for CommonWriteMethods 4cc18d3de5 CommonWriteMethods are not static any more 3aee77277e Split CommonMethods to accomodate for use in back/write.rs 83e07f9fe9 Added self argument for Codegen CommonMethod trait methods d325844804 Replaced Codegen field access by trait method 8714e6bce6 Traitification of common.rs methods 3889c2dcfb New Backend trait containing associated types d577ec7e5f New files and folders for traits Moved common enums to common 7a2670e307 Use real type names rather than Self:: a16d85bbae Removed parasite yaml file and put explicit lifetimes 89825f2ef5 Use associated types instead of type parameters inside the BuilderMethods trait 9c41e1aa10 Removed genericity over Value in various functions Prelude to using associated types in traits rather than type parameters 1ca750683e Generalized AsmDialect for BuilderMethods b761538997 Generalized SynchronisationScope for BuilderMethods b699866290 Generalized AtomicOrdering for BuilderMethods 275589150b Generalized AtomicRmwBinOp for BuilderMethods 1bcb4df166 Generalized OperandBundleDef in BuilderMethods bc86624c43 Removed useless traits for IntPredicate and RealPredicate 8590336d49 Generalized RealPredicate 51b7f2739b Generalized IntPredicate in the BuilderMethods trait 14798d6937 Generalized BasicBlocks in BuilderMethods trait 34c5dc045f Generalized base.rs#call_memcpy and everything that it uses 83b2152ce4 Reduced line length to pass tidy c76fc3d804 Work around to fix issue https://github.com/rust-lang/rust/issues/53912 5a9e6b8776 rustc_codegen_llvm: begin generalizing over backend values. 7cb068e523 add ui test 65e6fdb92e Ensure that the `static_assert!` argument is a `bool` 9b8791179f Update stderr file 03aaa4b659 remove unused dependency f2106d0746 use ? operator instead of match 86ef38b3b7 Rename checked_add_duration to checked_add and make it take the duration by value 6d40b7232e Implement checked_add_duration for SystemTime 6b9b97bd9b Auto merge of #55948 - matthiaskrgr:clippy, r=oli-obk f354c85102 submodules: update clippy from d8b42690 to f5d868c9 c8a9300d8e Fix stability hole with `static _` dbd9abd74d update closure arg suggesstion ui test 052bdff8fb lint based on closure pipe span 8c8ff6a4e1 test/linkage-visibility: Ignore on musl targets 4f9c860385 Add powerpc64-unknown-linux-musl target 2bb5029d74 Use the ELFv2 ABI on powerpc64 musl 346e97600b Fix powerpc64 ELFv2 big-endian struct-passing ABI 81303d7d90 Add powerpc-unknown-linux-musl target b8915f2ba8 fix other affected tests a3770c2547 do not accept out-of-bounds pointers in enum discriminants, they might be NULL ffb6ba0828 validation: better error when the enum discriminant is Undef e6e5635730 ty: return impl Iterator from Predicate::walk_tys 62cf9abcf6 rename FrameInfo span field to call_site e4d03f82b5 miri value visitor: provide place when visiting a primitive c5bc83b60d expose MutValueVisitor 6779bb485c capture_disjoint_fields(rust-lang#53488) Refactoring out the HirId of the UpvarId in another struct. 7f4bc2247a Clean up some non-mod-rs stuff. a1f83e75af Stress test for MPSC aa3d7a4e6e properly calculate spans for intra-doc link resolution errors a9a48ed3da Fix VecDeque pretty-printer b396505425 put file and line into miri backtrace c040a483bc Remove extern and some return value as an attempt to make the test pass on more platforms 1ca505a30a capture_disjoint_fields(rust-lang#53488) fb5135a6fc prettier miri backtrace printing f6b8eb7987 Update CI-clang to 7.0.0 for macOS dists. 2ec6f340cd Update CI-clang to 7.0.0 for Linux dists. 57a7c85f93 miri: backtraces with instances cfbae3e194 core/tests/num: Simplify `test_int_from_str_overflow()` test code 547ac5ef0a save-analysis: be even more aggressive about ignorning macro-generated defs 008e5dcbd5 appveyor: Use VS2017 for all our images 8b750a77fc The example values are now easyer to differenciate 562be7e1a1 Forward the ABI of the non-zero sized fields of an union if they have the same ABI 0c08529934 A few tweaks to iterations/collecting 0671bdb1eb reword #[test] attribute error on fn items b7c319c56a do not panic just because cargo failed f3e9b1a703 in which the E0618 "expected function" diagnostic gets a makeover 999c2e2433 Fix #[cfg] for step impl on ranges efad877c44 Updated RELEASES.md for 1.31.0 b937be87cb Clarifying documentation for collections::hash_map::Entry::or_insert 51e1f5560d add unstable attribute d0bac148f7 Fix incorrect documentation 11ee29a813 Use method rather than public field f1a593d116 Document kind field 3dc56b7d9c Fix mistake in my markdown c3f0c9419e Add very useful documentation ba0bab39e0 make sure we only guess field alignment at offset 0 b60efc1574 Continue to try to make travis happy by adding a issue number 420e6413c6 break line to keep `travis_fold:start:tidy` happy 3b0fc3c309 Add useful attributes 2d1cd9ae80 Make `ParseIntError` and `IntErrorKind` fully public a6622c265c note some FIXMEs 5ebd077f54 make it more obvious that the size is not relevant bb17f71749 also test with PhantomData aca76d42a0 test for offset and alignment of the sized part, instead of field count e753d21051 miri: accept extern types in structs if they are the only field bc1885703c Return &T / &mut T in ManuallyDrop Deref(Mut) impl 32d07cc2fc bootstrap: be more explicit on what we collect into. NFC 8a0666d5cc rename to thumbv8m.base-none-eabi, fix strict alignment 0e131052f6 fix tidy 965a97093e targets: thumbv8m: Add target for baseline ARMv8-M 99bed21101 Linkify types in docs b911dba40b Slice total example: Move closer to total defn e36bbc82f2 Example of total ord of elements for sort_by 7e57f0a6a8 Doc total order requirement of sort(_unstable)_by git-subtree-dir: rust git-subtree-split: fc84f5f837a3e1b9b9bc992dd603d3d968502288
Special-case `.llvm` in mangler Fixes rust-lang#60925 and fixes rust-lang#53912. r? @michaelwoerister cc @eddyb
This example (reduced from
rustc_codegen_llvm
) either crashes LLVM or makes it emit an assertion:I suspect the
for
loops aren't needed, but the control-flow there affects the bug in finicky ways.The
llvm
name of the module appears to be important and tied to the fact that we end up emittingllvm::
in a symbol name (because of theimpl
), which gets mangled asllvm..
(note the two dots).Among other things, changing the
.
we use to mangle:
, to$
makes the bug go away.Assertion message (if LLVM assertions are enabled):
Stack backtrace for SIGSEGV (if LLVM assertions are disabled):
cc @sunfishcode @denismerigoux @alexcrichton @rkruppe
The text was updated successfully, but these errors were encountered: