- 15 11月, 2018 6 次提交
-
-
由 Ralf Jung 提交于
-
由 Ralf Jung 提交于
-
由 bors 提交于
Add escape-to-raw MIR statement Add a new MIR "ghost state statement": Escaping a ptr to permit raw accesses. ~~This includes #55549, [click here](https://github.com/RalfJung/rust/compare/miri-visitor...RalfJung:escape-to-raw) for just the new commits.~~
-
由 bors 提交于
std: Synchronize access to global env during `exec` This commit, after reverting #55359, applies a different fix for #46775 while also fixing #55775. The basic idea was to go back to pre-#55359 libstd, and then fix #46775 in a way that doesn't expose #55775. The issue described in #46775 boils down to two problems: * First, the global environment is reset during `exec` but, but if the `exec` call fails then the global environment was a dangling pointer into free'd memory as the block of memory was deallocated when `Command` is dropped. This is fixed in this commit by installing a `Drop` stack object which ensures that the `environ` pointer is preserved on a failing `exec`. * Second, the global environment was accessed in an unsynchronized fashion during `exec`. This was fixed by ensuring that the Rust-specific environment lock is acquired for these system-level operations. Thanks to Alex Gaynor for pioneering the solution here! Closes #55775
-
由 Alex Crichton 提交于
This commit, after reverting #55359, applies a different fix for #46775 while also fixing #55775. The basic idea was to go back to pre-#55359 libstd, and then fix #46775 in a way that doesn't expose #55775. The issue described in #46775 boils down to two problems: * First, the global environment is reset during `exec` but, but if the `exec` call fails then the global environment was a dangling pointer into free'd memory as the block of memory was deallocated when `Command` is dropped. This is fixed in this commit by installing a `Drop` stack object which ensures that the `environ` pointer is preserved on a failing `exec`. * Second, the global environment was accessed in an unsynchronized fashion during `exec`. This was fixed by ensuring that the Rust-specific environment lock is acquired for these system-level operations. Thanks to Alex Gaynor for pioneering the solution here! Closes #55775 Co-authored-by: NAlex Gaynor <alex.gaynor@gmail.com>
-
由 bors 提交于
xLTO: Don't pass --plugin-opt=thin to LLD. That's not supported anymore. It seems that `-plugin-opt=thin` is not needed anymore when invoking LLD for ThinLTO. Unfortunately, still passing the option makes LLD crash instead of giving a deprecation warning or something.
-
- 14 11月, 2018 8 次提交
-
-
由 Alex Crichton 提交于
This reverts commit 36fe3b60.
-
由 Michael Woerister 提交于
-
由 bors 提交于
Switch AppVeyor builds to the GCE cloud [Recommended by AppVeyor][1] this isn't done by default for all builds due to the high startup overhead (3-4 minutes for a VM), but that's paltry compared to our overall build times so should be more than applicable! [1]: https://help.appveyor.com/discussions/questions/29832-did-recent-changes-apply-to-possibly-slow-down-builds#comment_46494058
-
由 bors 提交于
chalk lowering rule: ProjectionEq-Normalize cc #49177 r? @scalexm
-
由 bors 提交于
Rollup of 20 pull requests Successful merges: - #55136 (Remove short doc where it starts with a codeblock) - #55711 (Format BtreeMap::range_mut example) - #55722 (impl_stable_hash_for: support enums and tuple structs with generic parameters) - #55754 (Avoid converting bytes to UTF-8 strings to print, just pass bytes to stdout/err) - #55804 (rustdoc: don't inline `pub use some_crate` unless directly asked to) - #55805 (Move `static_assert!` into librustc_data_structures) - #55837 (Make PhantomData #[structural_match]) - #55840 (Fix TLS errors when downloading stage0) - #55843 (add FromIterator<A> to Box<[A]>) - #55858 (Small fixes on code blocks in rustdoc) - #55863 (Fix a typo in std::panic) - #55870 (Fix typos.) - #55874 (string: Add documentation for `From` impls) - #55879 (save-analysis: Don't panic for macro-generated use globs) - #55882 (Reference count `crate_inherent_impls`s return value.) - #55888 (miri: for uniformity, also move memory_deallocated to AllocationExtra) - #55889 (global allocators: add a few comments) - #55896 (Document optimizations enabled by FusedIterator) - #55905 (Change `Lit::short_name` to `Lit::literal_name`.) - #55908 (Fix their/there grammar nit)
-
由 Alex Crichton 提交于
[Recommended by AppVeyor][1] this isn't done by default for all builds due to the high startup overhead (3-4 minutes for a VM), but that's paltry compared to our overall build times so should be more than applicable! [1]: https://help.appveyor.com/discussions/questions/29832-did-recent-changes-apply-to-possibly-slow-down-builds#comment_46494058
-
由 csmoe 提交于
-
由 bors 提交于
Check for negative impls when finding auto traits Fixes #55321 When AutoTraitFinder begins examining a type, it checks for an explicit negative impl. However, it wasn't checking for negative impls found when calling 'select' on predicates found from nested obligations. This commit makes AutoTraitFinder check for negative impls whenever it makes a call to 'select'. If a negative impl is found, it immediately bails out. Normal users of SelectioContext don't need to worry about this, since they stop as soon as an Unimplemented error is encountered. However, we add predicates to our ParamEnv when we encounter this error, so we need to handle negative impls specially (so that we don't try adding them to our ParamEnv).
-
- 13 11月, 2018 26 次提交
-
-
由 bors 提交于
Use bound types in `librustc_traits` r? @nikomatsakis see the tests which now move the higher-ranked binders to the left in implied bound rules!
-
由 scalexm 提交于
-
由 scalexm 提交于
-
由 scalexm 提交于
A `WF(Type)` predicate was used previously, which did not play well with implied bounds in chalk.
-
由 scalexm 提交于
-
由 scalexm 提交于
-
由 scalexm 提交于
-
由 scalexm 提交于
-
由 scalexm 提交于
-
由 scalexm 提交于
-
由 kennytm 提交于
impl_stable_hash_for: support enums and tuple structs with generic parameters Port a bunch of implementations over to the macro, now that that is possible.
-
由 kennytm 提交于
Remove short doc where it starts with a codeblock Fixes #54975.
-
由 kennytm 提交于
Fix their/there grammar nit
-
由 kennytm 提交于
Change `Lit::short_name` to `Lit::literal_name`. This avoids a moderately hot allocation in `parse_lit_token`. r? @Mark-Simulacrum
-
由 kennytm 提交于
Document optimizations enabled by FusedIterator When reading this I wondered what “some significant optimizations” referred to. As far as I can tell from reading code, the specialization of `.fuse()` is the only case where `FusedIterator` has any impact at all. Is this accurate @Stebalien?
-
由 kennytm 提交于
global allocators: add a few comments These comments answer some questions that came up when I tried to understand how the control flow works for the global allocator, `Global` and `System`. r? @alexcrichton
-
由 kennytm 提交于
miri: for uniformity, also move memory_deallocated to AllocationExtra r? @oli-obk
-
由 kennytm 提交于
Reference count `crate_inherent_impls`s return value. The repeated cloning of the result in `inherent_impls` queries has quite an impact on crates with many inherent trait implementations. For instance on https://github.com/jmesmon/stm32f429, `cargo check` went from 75 seconds to 38 seconds on my machine.
-
由 kennytm 提交于
save-analysis: Don't panic for macro-generated use globs Follow-up to https://github.com/rust-lang/rust/commit/c2bb7cadf24e82b80f403c09e800fe5fad504caf - as before, ignore the use globs in macro expansions. Fixes https://github.com/rust-lang-nursery/rls/issues/1117. Closes #55480. r? @nrc
-
由 kennytm 提交于
string: Add documentation for `From` impls Hi this is part of #51430. I'm a first time contributor, so I started with a small task adding a bit of documentation for From impls.
-
由 kennytm 提交于
Fix typos.
-
由 kennytm 提交于
Fix a typo in std::panic
-
由 kennytm 提交于
Small fixes on code blocks in rustdoc It currently has a little margin issue with the `i` and there were js errors. r? @QuietMisdreavus
-
由 kennytm 提交于
add FromIterator<A> to Box<[A]>
-
由 kennytm 提交于
Fix TLS errors when downloading stage0 While attempting to test #49878 on Windows I hit the following error when attempting to download stage0. ``` The request was aborted: Could not create SSL/TLS secure channel ``` Instead of using the shell, we can just use `urllib`, which seems to fix the issue.
-
由 kennytm 提交于
Make PhantomData #[structural_match] fixes https://github.com/rust-lang/rust/issues/55028 This makes `PhantomData<T>` structurally matchable, irrespective of whether `T` is, per the discussion on this week's language team meeting (the general consensus was that this was a bug-fix). All types containing `PhantomData<T>` and which used `#[derive(PartialEq, Eq)]` and were previously not `#[structural_match]` only because of `PhantomData<T>` will now be `#[structural_match]`. r? @nikomatsakis
-