- 12 11月, 2015 2 次提交
-
-
由 Steve Klabnik 提交于
This mostly brings them in line with existing linking convention, but also has some minor re-wording. The text at the top has been re-focused, by starting out with what the prelude does, rather than starting from injecting std. Also, it now mentions that other preludes exist. Part of https://github.com/rust-lang/rust/issues/29369
-
由 bors 提交于
The older algorithm was pretty inefficient for big matches. Fixes #29227. (On my computer, MIR construction on this test case goes from 9.9s to 0.025s.) Whereas before we had a loop like: - for all outcomes of the test we are performing - for all candidates - check whether candidate is relevant to outcome We now do: - for all candidates - determine which outcomes the candidate is relevant to Since the number of outcomes in this case is proportional to the number of candidates, the original algorithm turned out to be O(n^2), and the newer one is just O(n). This PR also does some minor speedups by eagerly mirroring all patterns, so that we can just pass around `&Pattern<'tcx>`, which makes cloning cheaper. We could probably go a bit further in this direction. r? @Aatch
-
- 11 11月, 2015 22 次提交
-
-
由 bors 提交于
Hi Rustaceans! This is the secong take on running latest rustfmt on librustc_driver! All fixups made in https://github.com/rust-lang/rust/pull/29033 were done (also rustfmt got better). //cc @nrc
-
由 Niko Matsakis 提交于
-
由 Niko Matsakis 提交于
`Vec` should not be resized.
-
由 bors 提交于
Moved from #29753. r? @steveklabnik
-
由 bors 提交于
None
-
由 bors 提交于
Fixes #29751.
-
由 bors 提交于
-
由 bors 提交于
Fix #16410.
-
由 Niko Matsakis 提交于
-
由 Niko Matsakis 提交于
before we iterated over the test and each outcome thereof, and then checked processed every candidate against this outcome, we now organize the walk differently. Instead, we visit each candidate and say "Here is the test being performed. Figure out the resulting candidates for each possible outcome and add yourself into the appropriate places."
-
由 Niko Matsakis 提交于
-
由 Niko Matsakis 提交于
pass around references instead of boxed values to save on clone costs.
-
由 bors 提交于
This should help avoid triggering the unused_results lint which can frequently be turned on. Closes #29710
-
由 bors 提交于
- Check privacy sanity in all blocks, not only function bodies - Check all fields, not only named - Check all impl items, not only methods - Check default impls - Move the sanity check in the beginning of privacy checking, so others could rely on it Technically it's a [breaking-change], but I expect no breakage because, well, it's *sane* privacy visitor, if code is broken it must be insane by definition!
-
由 bors 提交于
This commit adds issue numbers to the vast majority of active feature gates. The few that are left without issues are rustc/runtime-internal features that are essentially private APIs. Closes #28244 r? @huonw
-
由 bors 提交于
The comparison of IP addresses should happen not always in network endianness but rather in the host endianness format, so be sure to convert to that before comparing addresses. There are still locations where the endianness will factor into visible properties, such as the hash, but these are not important to be independent of the endianness in play (as hash values are pretty undefined anyway. Closes #29691
-
由 Jose Narvaez 提交于
-
由 Jose Narvaez 提交于
-
由 Matt Brubeck 提交于
-
由 bors 提交于
In particular, attributes are now parsed on fields of tuple variants
-
由 bors 提交于
- Successful merges: #29420, #29688, #29708, #29715, #29729, #29731 - Failed merges: #29544
-
由 Tamir Duberstein 提交于
Fixes #29751.
-
- 10 11月, 2015 16 次提交
-
-
由 Steve Klabnik 提交于
* wrap to 80 cols * small grammar fix, missing 'the'
-
由 Steve Klabnik 提交于
r? @steveklabnik This completely abdicates any responsibility to explain what Rust is, instead linking to the website. My main motivation is that I am still not happy with it, and every time I try to fix it I just write a slightly longer sales pitch than what's on the website. One thing this paragraph could do is direct people to more information about what is in the repo, or more technical information about the implementation.
-
由 Steve Klabnik 提交于
r? @steveklabnik See #27305
-
由 Steve Klabnik 提交于
r? @steveklabnik
-
由 Steve Klabnik 提交于
Since commit 46068c9d, call to `reserve()` on empty vec allocates exactly requested capacity, so unroll of first iteration may help only with branch prediction.
-
由 Steve Klabnik 提交于
r? @steveklabnik
-
由 bors 提交于
…type-params for methods
-
由 bors 提交于
-
由 Seo Sanghyeon 提交于
-
由 bors 提交于
Quite a bit of cruft in the valgrind suppressions. I started from a clean slate and found a few unique failures; this commit also moves the tests "fixed" by these suppressions into run-pass-valgrind.
-
由 Seo Sanghyeon 提交于
-
由 Vadim Petrochenkov 提交于
-
由 Manish Goregaokar 提交于
-
由 bors 提交于
Hi Rustaceans! This is the second take on running latest rustfmt on librustc_front! This is the same in https://github.com/rust-lang/rust/pull/29075 but cleaned. All fixups have been applied. //cc @nrc
-
由 bors 提交于
This commit replaces the in-tree liblibc with the [external clone](https://github.com/rust-lang-nursery/libc) which has no evolved beyond the in-tree version in light of its [recent redesign](https://github.com/rust-lang/rfcs/pull/1291). The primary changes here are: * `src/liblibc/lib.rs` was deleted * `src/liblibc` is now a submodule pointing at the external repository * `src/libstd/sys/unix/{c.rs,sync.rs}` were both deleted having all bindings folded into the external liblibc. * Many ad-hoc `extern` blocks in the standard library were removed in favor of bindings now being in the external liblibc. * Many functions/types were added to `src/libstd/sys/windows/c.rs`, and the scattered definitions throughout the standard library were consolidated here. At the API level this commit is **not a breaking change**, although it is only very lightly tested on the *BSD variants and is probably going to break almost all of their builds! Follow-up commits to liblibc should in theory be all that's necessary to get the build working on the *BSDs again.
-
由 Alex Crichton 提交于
* Delete `sys::unix::{c, sync}` as these are now all folded into libc itself * Update all references to use `libc` as a result. * Update all references to the new flat namespace. * Moves all windows bindings into sys::c
-