about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2020-08-10add test for unused erroneous const in CTFERalf Jung-0/+63
2020-08-09bless MIRRalf Jung-31/+31
2020-08-09evaluate required_consts when pushing stack frame in Miri engineRalf Jung-0/+7
2020-08-09move const_eval error reporting logic into rustc_mir::const_eval::errorRalf Jung-194/+201
2020-08-09Auto merge of #75310 - petrochenkov:needwasm, r=Mark-Simulacrumbors-1/+2
tests: Mark `ui/asm/bad-arch.rs` as requiring wasm llvm backend So it doesn't fail when not all LLVM backends are built.
2020-08-09tests: Mark `ui/asm/bad-arch.rs` as requiring wasm llvm backendVadim Petrochenkov-1/+2
2020-08-09Auto merge of #75280 - overdrivenpotato:psp-unwind, r=dtolnaybors-2/+2
Add back unwinding support for Sony PSP This PR adds back unwinding support for the Sony PSP. The `mipsel-sony-psp` target works well with unwinding. In [rust-psp], we use the `panic_unwind` crate along with LLVM's libunwind to catch panics, run destructors, and print them to the debug screen without aborting all threads. [rust-psp]: https://github.com/overdrivenpotato/rust-psp
2020-08-09Auto merge of #75306 - Amanieu:hashbrown8, r=Mark-Simulacrumbors-3/+3
Update hashbrown to 0.8.2 Includes: - Avoid closures to improve compile times (https://github.com/rust-lang/hashbrown/pull/183) - Do not iterate to drop if empty (https://github.com/rust-lang/hashbrown/pull/182) r? @Mark-Simulacrum
2020-08-08Auto merge of #75308 - JohnTitor:rollup-vnnny43, r=JohnTitorbors-58/+134
Rollup of 15 pull requests Successful merges: - #74712 (Update E0271 explanation) - #74842 (adjust remaining targets) - #75151 (Consistent variable name alloc for raw_vec) - #75162 (Fix the documentation for move about Fn traits implementations) - #75248 (Add `as_mut_ptr` to `NonNull<[T]>`) - #75262 (Show multi extension example for Path in doctests) - #75266 (Add safety section to `NonNull::as_*` method docs) - #75284 (Show relative example for Path ancestors) - #75285 (Separate example for Path strip_prefix) - #75287 (Show Path extension example change multi extension) - #75288 (Use assert! for Path exists example to check bool) - #75289 (Remove ambiguity from PathBuf pop example) - #75290 (fix `min_const_generics` version) - #75291 (Clean up E0750) - #75292 (Clean up E0502) Failed merges: r? @ghost
2020-08-09Rollup merge of #75292 - slanterns:cleanup-E0502, r=GuillaumeGomezYuki Okushi-2/+2
Clean up E0502 `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead.
2020-08-09Rollup merge of #75291 - GuillaumeGomez:cleanup-e0750, r=pickfireYuki Okushi-6/+19
Clean up E0750 r? @Dylan-DPC
2020-08-09Rollup merge of #75290 - rust-lang:min_const_generics-version, r=jonas-schievinkYuki Okushi-1/+1
fix `min_const_generics` version https://github.com/rust-lang/rust/pull/74877#discussion_r467451813 > This should be 1.47.0
2020-08-09Rollup merge of #75289 - pickfire:patch-12, r=jonas-schievinkYuki Okushi-2/+2
Remove ambiguity from PathBuf pop example
2020-08-09Rollup merge of #75288 - pickfire:patch-11, r=jonas-schievinkYuki Okushi-1/+1
Use assert! for Path exists example to check bool
2020-08-09Rollup merge of #75287 - pickfire:patch-10, r=jonas-schievinkYuki Okushi-0/+2
Show Path extension example change multi extension
2020-08-09Rollup merge of #75285 - pickfire:patch-8, r=jonas-schievinkYuki Okushi-2/+3
Separate example for Path strip_prefix
2020-08-09Rollup merge of #75284 - pickfire:patch-7, r=LukasKalbertodtYuki Okushi-0/+7
Show relative example for Path ancestors
2020-08-09Rollup merge of #75266 - aticu:master, r=RalfJungYuki Okushi-0/+36
Add safety section to `NonNull::as_*` method docs This basically adds the safety section of `*mut T::as_{ref,mut}` to the same methods on `NonNull` with minor modifications to fit the differences. Part of #48929.
2020-08-09Rollup merge of #75262 - pickfire:patch-6, r=jyn514Yuki Okushi-6/+4
Show multi extension example for Path in doctests
2020-08-09Rollup merge of #75248 - TimDiekmann:NonNull-as_mut_ptr, r=RalfJungYuki Okushi-0/+18
Add `as_mut_ptr` to `NonNull<[T]>` Adds `as_mut_ptr` to shortcut converting a `NonNull<[T]>` to `*mut T` as proposed in https://github.com/rust-lang/rust/issues/74265#issuecomment-669702969. r? @RalfJung
2020-08-09Rollup merge of #75162 - poliorcetics:move-documentation-fix, r=jyn514Yuki Okushi-2/+18
Fix the documentation for move about Fn traits implementations Fixes #74997. This uses the note from the [reference](https://doc.rust-lang.org/reference/types/closure.html#call-traits-and-coercions) but I can also just put a link to it or do both. @rusbot modify labels: C-bug T-doc T-libs
2020-08-09Rollup merge of #75151 - pickfire:patch-4, r=LukasKalbertodtYuki Okushi-4/+6
Consistent variable name alloc for raw_vec
2020-08-09Rollup merge of #74842 - hermitcore:thread_local, r=Mark-SimulacrumYuki Okushi-2/+2
adjust remaining targets - fix commit 7dc3886 - previous commit doesn't adjust all targets
2020-08-09Rollup merge of #74712 - strom-und-spiele:E0271-cleanup, r=Mark-SimulacrumYuki Okushi-30/+13
Update E0271 explanation When reading the explanation, I got confused by it. I hope the wording is clearer now.
2020-08-08Auto merge of #75271 - cuviper:array-iter, r=LukasKalbertodtbors-89/+55
Simplify array::IntoIter - Initialization can use `transmute_copy` to do the bitwise copy. - `as_slice` can use `get_unchecked` and `MaybeUninit::slice_get_ref`, and `as_mut_slice` can do similar. - `next` and `next_back` can use the corresponding `Range` methods. - `Clone` doesn't need any unsafety, and we can dynamically update the new range to get partial drops if `T::clone` panics. r? @LukasKalbertodt
2020-08-08Remove E0750 from unchecked error codesGuillaume Gomez-2/+1
2020-08-08Clean up E0750 explanationGuillaume Gomez-4/+18
2020-08-08Auto merge of #75163 - canova:map_into_keys_values, r=dtolnaybors-0/+325
Implement `into_keys` and `into_values` for associative maps This PR implements `into_keys` and `into_values` for HashMap and BTreeMap types. They are implemented as unstable, under `map_into_keys_values` feature. Fixes #55214. r? @dtolnay
2020-08-08Auto merge of #75260 - davidtwco:polymorphization-promoted-substs, r=lcnrbors-15/+104
polymorphize: unevaluated constants This PR makes polymorphization visit the promoted MIR of unevaluated constants with available promoted MIR instead of visiting the substitutions of that constant - which will mark all of the generic parameters as used; in addition polymorphization will now visit non-promoted unevaluated constants rather than visit their substs. r? @lcnr
2020-08-08Update the tracking issue number of map_into_keys_valuesNazım Can Altınova-24/+24
2020-08-08Update hashbrown to 0.8.2Amanieu d'Antras-3/+3
2020-08-08Add an example about the behaviour of move and Fn* traitsAlexis Bourget-5/+17
2020-08-08Remove min/max values from IntoValues Iterator implementationNazım Can Altınova-8/+0
2020-08-08Auto merge of #74533 - nikic:issue-74425, r=eddybbors-8/+32
Emit == null instead of <= null for niche check When the niche maximum is zero, emit a "== zero" check instead of a "<= zero" check. In particular, this avoids the awkward case of "<= null". While LLVM does canonicalize this to "== null", this apparently doesn't happen for constant expressions, leading to the issue in #74425. While that can be addressed on the LLVM side, it still seems prudent to emit sensible IR here, because this will allow null checks to be optimized earlier in the pipeline. Fixes #74425.
2020-08-08Use `&` instead of `let ref` in E0502 Slanterns-2/+2
`ref` on an entire `let` pattern is discouraged, take a reference with `&` instead.
2020-08-08Add safety section to `NonNull::as_*` method docsaticu-0/+36
This basically adds the safety section of `*mut T::as_{ref,mut}` to the same methods on `NonNull` with minor modifications to fit the differences. Part of #48929.
2020-08-08fix `min_const_generics` versionBastian Kauschke-1/+1
2020-08-08Auto merge of #74289 - lzutao:unroll, r=LukasKalbertodtbors-28/+13
Remove some redundant parts from `unrolled_find_u16s` See each commit message for details. r? @wesleywiser from old PR #67705 .
2020-08-08Remove abmiguity from PathBuf pop exampleIvan Tham-2/+2
2020-08-08Use assert! for Path exists example to check boolIvan Tham-1/+1
2020-08-08Show Path extension example change multi extensionIvan Tham-0/+2
2020-08-08Separate example for Path strip_prefixIvan Tham-2/+3
2020-08-08Show relative example for Path ancestorsIvan Tham-0/+7
2020-08-08Auto merge of #75282 - RalfJung:miri-black-box, r=oli-obkbors-1/+3
do not call black_box on Miri Helps with https://github.com/rust-lang/rust/issues/75274 (but https://github.com/rust-lang/rust/pull/74932 introduced unrelated breakage that will need a separate fix) Cc @eggyal r? @Mark-Simulacrum
2020-08-08Update E0271.mdstrom-und-spiele-30/+13
remove references to non existing code, expand solution suggestions remove unneeded code in solution
2020-08-08make black_box a NOP in MiriRalf Jung-1/+3
2020-08-08Emit == null instead of <= nullNikita Popov-8/+32
When the niche maximum is zero, emit a "== zero" check instead of a "<= zero" check. In particular, this avoid the awkward case of "<= null". While LLVM does canonicalize this to "!= null", this appently doesn't happen for constant expressions, leading to the issue in #74425. While that can be addressed on the LLVM side, it still seems prudent to emit sensible IR here, because this will allow null checks to be optimized earlier in the pipeline. Fixes #74425.
2020-08-08Auto merge of #75257 - ssomers:btree_74762_again, r=Mark-Simulacrumbors-32/+25
BTreeMap: better way to postpone root access in DrainFilter A slightly more elegant (in my opinion) adaptation of #74762. Benchmarks seem irrationally pleased to: ``` benchcmp old new --threshold 5 name old ns/iter new ns/iter diff ns/iter diff % speedup btree::map::clone_fat_100_and_remove_all 215,182 185,052 -30,130 -14.00% x 1.16 btree::map::clone_fat_100_and_remove_half 139,667 127,945 -11,722 -8.39% x 1.09 btree::map::clone_fat_val_100_and_remove_all 96,755 81,279 -15,476 -16.00% x 1.19 btree::map::clone_fat_val_100_and_remove_half 64,678 56,911 -7,767 -12.01% x 1.14 btree::map::find_rand_100 18 17 -1 -5.56% x 1.06 btree::map::first_and_last_0 33 35 2 6.06% x 0.94 btree::map::first_and_last_100 40 54 14 35.00% x 0.74 btree::map::insert_rand_100 45 42 -3 -6.67% x 1.07 btree::map::insert_rand_10_000 45 41 -4 -8.89% x 1.10 btree::map::iter_0 2,010 1,759 -251 -12.49% x 1.14 btree::map::iter_100 3,514 2,764 -750 -21.34% x 1.27 btree::map::iter_10k 4,018 3,768 -250 -6.22% x 1.07 btree::map::range_unbounded_unbounded 37,269 28,929 -8,340 -22.38% x 1.29 btree::map::range_unbounded_vs_iter 31,518 28,814 -2,704 -8.58% x 1.09 ``` r? @Mark-Simulacrum
2020-08-08Add back unwinding support for Sony PSPMarko Mijalkovic-2/+2
2020-08-08Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkovbors-842/+865
Remove `librustc_ast` session globals By moving the data onto `Session`. r? @petrochenkov