- 04 7月, 2017 5 次提交
-
-
由 Mark Simulacrum 提交于
-
由 Mark Simulacrum 提交于
-
由 bors 提交于
Delete deprecated & unstable range-specific `step_by` Using the new one is annoying while this one exists, since the inherent method hides the one on iterator. Tracking issue: #27741 Replacement: #41439 Deprecation: #42310 for 1.19 Fixes #41477
-
由 bors 提交于
Add .editorconfig to src/rustllvm ... which uses 2 space indent instead of common 4 spaces.
-
由 bors 提交于
[libstd_unicode] Upgrade to Unicode 10.0.0 Update `libstd_unicode`'s data tables to Unicode 10.0.0, as released on 2017 June 20: http://www.unicode.org/versions/Unicode10.0.0/
-
- 03 7月, 2017 4 次提交
-
-
由 bors 提交于
Fix Redox build, apparently broken by #42687
-
由 bors 提交于
Stabilize feature sort_unstable Closes #40585
-
由 Stjepan Glavina 提交于
-
由 Stjepan Glavina 提交于
-
- 02 7月, 2017 14 次提交
-
-
由 bors 提交于
Output column number info when panicking Outputs the column number when panicking. Useful when you e.g. have code like `foo[i] = bar[k] + bar[l]` and you get a panic with index out of bounds, or when you have an expression like `a = b + c + d + e` and the addition overflows. Now you know which operation to blame! The format is `file:line:column`, just like for compiler errors. Example output with the patch: ``` thread 'main' panicked at 'index out of bounds: the len is 5 but the index is 8', src/main.rs:3:8 ``` As some of the API between the compiler and the library landscape gets broken, this is a bit hackier than I'd originally wanted it to be. * `panic` and `panic_bounds_check` lang items got an additional column param, on stage0 I still have to use the previous version. After a SNAP this should be resolved. * For `#[derive(RustcDeserialze)]`, stage0 requires a fixed signature for `std::rt::begin_panic`, so we can't change it right away. What we need to do instead is to keep the signature, and add a `begin_panic_new` function that we use in later stages instead. After a SNAP we can change the `begin_panic` function and rely on it instead of `begin_panic_new`, and one SNAP later we can remove `begin_panic_new`. * Fortunately I didn't have to break anything about the panic hook API, I could easily extend it. Note that debuginfo remains unchanged, so RUST_BACKTRACE output won't contain any column info. See issue #42921 for discussion on including the column in debuginfo.
-
由 bors 提交于
report the total number of errors on compilation failure Prior to this PR, when we aborted because a "critical pass" failed, we displayed the number of errors from that critical pass. While that's the number of errors that caused compilation to abort in *that place*, that's not what people really want to know. Instead, always report the total number of errors, and don't bother to track the number of errors from the last pass that failed. This changes the compiler driver API to handle errors more smoothly, therefore is a compiler-api-[breaking-change]. Fixes #42793. r? @EddyB
-
由 Ariel Ben-Yehuda 提交于
Prior to this PR, when we aborted because a "critical pass" failed, we displayed the number of errors from that critical pass. While that's the number of errors that caused compilation to abort in *that place*, that's not what people really want to know. Instead, always report the total number of errors, and don't bother to track the number of errors from the last pass that failed. This changes the compiler driver API to handle errors more smoothly, and therefore is a compiler-api-[breaking-change]. Fixes #42793.
-
由 est31 提交于
-
由 est31 提交于
-
由 est31 提交于
-
由 est31 提交于
-
由 Ariel Ben-Yehuda 提交于
This reverts commit 5558c64f.
-
由 Stjepan Glavina 提交于
-
由 Scott McMurray 提交于
Replacement: 41439 Deprecation: 42310 for 1.19 Fixes 41477
-
由 bors 提交于
bootstrap: Fix all the pep-8 issues reported by flake8 This commit also adds a few missing docstrings. Today, after reading this [article](https://blog.rust-lang.org/2017/06/27/Increasing-Rusts-Reach.html), I downloaded this project and started building from source. In the meantime, I began to read the `bootstrap.py`, to know more about the building process, and I made a few changes, this is my first contribution to the project, hope you like it. BTW, I have a few doubts about the `bootstrap.py`, any guidance is more than welcome: * Where can I find the unit tests for this script? In case it doesn't exist yet, do you like to include some unit tests with pytest? * Some methods like `fix_executable`, `get_string`, and `exe_suffix` in the `RustBuild` class should be converted to a function because it doesn't use `self` anywhere. What do you think?
-
由 Stjepan Glavina 提交于
-
由 bors 提交于
Stabilize 'more_io_inner_methods' feature. As in the title. Closes #41519.
-
- 01 7月, 2017 17 次提交
-
-
由 bors 提交于
Improve tests and benchmarks for slice::sort and slice::sort_unstable This PR just hardens the tests and improves benchmarks. More specifically: 1. Benchmarks don't generate vectors in `Bencher::iter` loops, but simply clone pregenerated vectors. 2. Benchmark `*_strings` doesn't allocate Strings in `Bencher::iter` loops, but merely clones a `Vec<&str>`. 3. Benchmarks use seeded `XorShiftRng` to be more consistent. 4. Additional tests for `slice::sort` are added, which test sorting on slices with several ascending/descending runs. The implementation identifies such runs so it's a good idea to test that scenario a bit. 5. More checks are added to `run-pass/vector-sort-panic-safe.rs`. Sort algorithms copy elements around a lot (merge sort uses an auxilliary buffer and pdqsort copies the pivot onto the stack before partitioning, then writes it back into the slice). If elements that are being sorted are internally mutable and comparison function mutates them, it is important to make sure that sort algorithms always use the latest "versions" of elements. New checks verify that this is true for both `slice::sort` and `slice::sort_unstable`. As a side note, all of those improvements were made as part of the parallel sorts PR in Rayon (nikomatsakis/rayon#379) and now I'm backporting them into libcore/libstd. r? @alexcrichton
-
由 Milton Mazzarri 提交于
-
由 bors 提交于
rustbuild: set __CARGO_DEFAULT_LIB_METADATA to channel Also, update the cargo submodule to handle the new value.
-
由 bors 提交于
When writing LLVM IR output demangled fn name in comments `--emit=llvm-ir` looks like this now: ``` ; <alloc::vec::Vec<T> as core::ops::index::IndexMut<core::ops::range::RangeFull>>::index_mut ; Function Attrs: inlinehint uwtable define internal { i8*, i64 } @"_ZN106_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..index..IndexMut$LT$core..ops..range..RangeFull$GT$$GT$9index_mut17h7f7b576609f30262E"(%"alloc::vec::Vec<u8>"* dereferenceable(24)) unnamed_addr #0 { start: ... ``` cc https://github.com/integer32llc/rust-playground/issues/15
-
由 Milton Mazzarri 提交于
This commit also adds a few missing docstrings
-
由 bors 提交于
fixed some clippy warnings in compiletest This is mainly readability stuff. Whenever the `clone_ref` lint asked me to clone the dereferenced object, I removed the `.clone()` instead, relying on the fact that it has worked so far and the immutable borrow ensures that the value won't change.
-
由 Sergio Benitez 提交于
-
由 Stepan Koltsov 提交于
`--emit=llvm-ir` looks like this now: ``` ; <alloc::vec::Vec<T> as core::ops::index::IndexMut<core::ops::range::RangeFull>>::index_mut ; Function Attrs: inlinehint uwtable define internal { i8*, i64 } @"_ZN106_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..index..IndexMut$LT$core..ops..range..RangeFull$GT$$GT$9index_mut17h7f7b576609f30262E"(%"alloc::vec::Vec<u8>"* dereferenceable(24)) unnamed_addr #0 { start: ... ``` cc https://github.com/integer32llc/rust-playground/issues/15
-
由 Behnam Esfahbod 提交于
-
由 bors 提交于
Rollup of 6 pull requests - Successful merges: #42669, #42911, #42925, #42957, #42985, #42987 - Failed merges: #42936
-
由 Guillaume Gomez 提交于
Track `iterator_for_each` in #42986 None
-
由 Guillaume Gomez 提交于
rustc_llvm: re-run build script when env var LLVM_CONFIG changes This removes the changes done in #42429 and use the newly introduced `cargo:rerun-if-env-changed` in https://github.com/rust-lang/cargo/pull/4125. As `LLVM_CONFIG` env var points to the `llvm-config` and changes when it gets configured in `config.toml` or removed from it, we can re-run the build script if this env var changes. closes #42444 r? @alexcrichton
-
由 Guillaume Gomez 提交于
Add E0619 error explanation r? @EddyB
-
由 Guillaume Gomez 提交于
Document possible `io::ErrorKind`s of `fs::open` Try to make clear that this isn't an API guarantee for now, as we likely want to refine these errors in the future, e.g. `ENOSPC` "No space left on device". CC #40322
-
由 Guillaume Gomez 提交于
Update RLS submodule
-
由 Guillaume Gomez 提交于
Adding diagnostic code 0611 for lifetime errors with one named, one anonymous lifetime parameter This is a fix for #42517 Note that this only handles the above case for **function declarations** and **traits**. `impl items` and `closures` will be handled in a later PR. Example ``` fn foo<'a>(x: &i32, y: &'a i32) -> &'a i32 { if x > y { x } else { y } } ``` now displays the following error message. ui tests have been added for the same. ``` error[E0611]: explicit lifetime required in the type of `x` 11 | fn foo<'a>(x: &i32, y: &'a i32) -> &'a i32 { | ^ consider changing the type of `x` to `&'a i32` 12 | if x > y { x } else { y } | - lifetime `'a` required ``` #42516 r? @nikomatsakis
-