| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-12-11 | Add post-initialization hook for static memory initialized using the ↵ | JCTyblaidd | -1/+14 | |
| interpereter. | ||||
| 2020-12-11 | make redundant StorageLive UB | Ralf Jung | -23/+16 | |
| 2020-12-10 | CTFE: tweak abort-on-uninhabited message | Ralf Jung | -1/+7 | |
| 2020-12-10 | Auto merge of #79621 - usbalbin:constier_maybe_uninit, r=RalfJung | bors | -3/+13 | |
| Constier maybe uninit I was playing around trying to make `[T; N]::zip()` in #79451 be `const fn`. One of the things I bumped into was `MaybeUninit::assume_init`. Is there any reason for the intrinsic `assert_inhabited<T>()` and therefore `MaybeUninit::assume_init` not being `const`? --- I have as best as I could tried to follow the instruction in [library/core/src/intrinsics.rs](https://github.com/rust-lang/rust/blob/master/library/core/src/intrinsics.rs#L11). I have no idea what I am doing but it seems to compile after some slight changes after the copy paste. Is this anywhere near how this should be done? Also any ideas for name of the feature gate? I guess `const_maybe_assume_init` is quite misleading since I have added some more methods. Should I add test? If so what should be tested? | ||||
| 2020-12-09 | Also generate `StorageDead` in constants | oli | -16/+6 | |
| 2020-12-07 | Add comment for assert_inhabited in ↵ | Albin Hedman | -0/+2 | |
| compiler/rustc_mir/src/interpret/intrinsics.rs Co-authored-by: Ralf Jung <post@ralfj.de> | ||||
| 2020-12-07 | small `TypeVisitor` refactor | Bastian Kauschke | -4/+5 | |
| 2020-12-06 | Fix comments related to abort() | Albin Hedman | -6/+4 | |
| 2020-12-05 | abort() now takes a msg parameter | Albin Hedman | -5/+7 | |
| 2020-12-03 | move interpret::MemoryKind::Heap to const eval | Vishnunarayan K I | -20/+20 | |
| 2020-12-03 | move intrinsic to CTFE, add FIXME | Vishnunarayan K I | -19/+3 | |
| 2020-12-02 | Undo fn -> const fn for all intrinsics but assert_inhabited | Albin Hedman | -17/+1 | |
| 2020-12-02 | rename MemoryKind::Heap to ConstHeap; bless test | Vishnunarayan K I | -6/+12 | |
| 2020-12-02 | Make some of MaybeUninit's methods const | Albin Hedman | -0/+24 | |
| 2020-12-01 | review comments | Vishnunarayan K I | -3/+3 | |
| 2020-12-01 | add const_allocate intrisic | Vishnunarayan K I | -3/+21 | |
| 2020-11-26 | Fix new 'unnecessary trailing semicolon' warnings | Aaron Hill | -1/+1 | |
| 2020-11-21 | List all variants of TyKind | Ngo Iok Ui | -1/+20 | |
| 2020-11-20 | Exhaustively match in variant count instrinsic | Ngo Iok Ui | -7/+10 | |
| 2020-11-17 | Auto merge of #78779 - LeSeulArtichaut:ty-visitor-return, r=oli-obk | bors | -2/+4 | |
| Introduce `TypeVisitor::BreakTy` Implements MCP rust-lang/compiler-team#383. r? `@ghost` cc `@lcnr` `@oli-obk` ~~Blocked on FCP in rust-lang/compiler-team#383.~~ | ||||
| 2020-11-16 | compiler: fold by value | Bastian Kauschke | -4/+4 | |
| 2020-11-14 | Set the default `BreakTy` to `!` | LeSeulArtichaut | -0/+2 | |
| 2020-11-14 | Introduce `TypeVisitor::BreakTy` | LeSeulArtichaut | -2/+2 | |
| 2020-11-06 | inliner: Use substs_for_mir_body | Tomasz Miąsko | -5/+1 | |
| Changes from 68965 extended the kind of instances that are being inlined. For some of those, the `instance_mir` returns a MIR body that is already expressed in terms of the types found in substitution array, and doesn't need further substitution. Use `substs_for_mir_body` to take that into account. | ||||
| 2020-11-05 | Rollup merge of #78742 - vn-ki:fix-issue-78655, r=oli-obk | Mara Bos | -5/+10 | |
| make intern_const_alloc_recursive return error fix #78655 r? ``@oli-obk`` | ||||
| 2020-11-04 | make intern_const_alloc_recursive return error fix #78655 | Vishnunarayan K I | -5/+10 | |
| 2020-11-04 | `u128` truncation and sign extension are not just interpreter related | oli | -12/+9 | |
| 2020-11-04 | Add helper for getting an `int` out of a `Scalar` | oli | -4/+1 | |
| 2020-11-04 | Replace `Scalar::zst` with a `Scalar::ZST` constant | oli | -3/+3 | |
| 2020-11-04 | s/Scalar::Raw/Scalar::Int | oli | -3/+3 | |
| 2020-11-04 | Split the "raw integer bytes" part out of `Scalar` | Oliver Scherer | -15/+8 | |
| 2020-10-30 | Remove implicit `Continue` type | LeSeulArtichaut | -2/+2 | |
| 2020-10-30 | Use `ControlFlow::is{break,continue}` | LeSeulArtichaut | -1/+1 | |
| 2020-10-30 | TypeVisitor: use `ControlFlow` in rustc_{mir,privacy,traits,typeck} | LeSeulArtichaut | -13/+10 | |
| 2020-10-29 | Rollup merge of #78475 - RalfJung:validity-comment, r=oli-obk | Yuki Okushi | -2/+1 | |
| fix a comment in validity check A few things changed since that comment was written; update it to the current reality. r? @oli-obk | ||||
| 2020-10-28 | fix a comment in validity check | Ralf Jung | -2/+1 | |
| 2020-10-28 | Rollup merge of #78351 - RalfJung:validity-unsafe-cell, r=oli-obk | Dylan DPC | -90/+87 | |
| Move "mutable thing in const" check from interning to validity This moves the check for mutable things (such as `UnsafeCell` or `&mut`) in a`const` from interning to validity. That means we can give more targeted error messages (pointing out *where* the problem lies), and we can simplify interning a bit. Also fix the interning mode used for promoteds in statics. r? @oli-obk | ||||
| 2020-10-26 | Auto merge of #68965 - eddyb:mir-inline-scope, r=nagisa,oli-obk | bors | -28/+51 | |
| rustc_mir: track inlined callees in SourceScopeData. We now record which MIR scopes are the roots of *other* (inlined) functions's scope trees, which allows us to generate the correct debuginfo in codegen, similar to what LLVM inlining generates. This PR makes the `ui` test `backtrace-debuginfo` pass, if the MIR inliner is turned on by default. Also, `#[track_caller]` is now correct in the face of MIR inlining (cc `@anp).` Fixes #76997. r? `@rust-lang/wg-mir-opt` | ||||
| 2020-10-26 | explain why interning is not as trivial as it might seem | Ralf Jung | -0/+11 | |
| 2020-10-26 | interning cleanup: we no longer need to distinguish Const and ConstInner; we ↵ | Ralf Jung | -59/+23 | |
| no longer need the ignore_interior_mut_in_const hack | ||||
| 2020-10-26 | move &mut-in-const check from interning to validation | Ralf Jung | -3/+11 | |
| 2020-10-26 | move UnsafeCell-in-const check from interning to validation | Ralf Jung | -34/+48 | |
| 2020-10-25 | Auto merge of #78179 - RalfJung:miri-comments, r=oli-obk | bors | -23/+25 | |
| Miri engine: entirely skip interning of ZST, and improve some comments r? `@oli-obk` | ||||
| 2020-10-21 | Lift: take self by value | Bastian Kauschke | -1/+1 | |
| 2020-10-21 | Miri engine interning: improve comments, and entirely skip ZST | Ralf Jung | -11/+17 | |
| 2020-10-21 | Miri engine validity check: simplify code with 'matches!' | Ralf Jung | -12/+8 | |
| and improve a comment a bit | ||||
| 2020-10-21 | rustc_mir: support MIR-inlining #[track_caller] functions. | Eduard-Mihai Burtescu | -28/+51 | |
| 2020-10-17 | Optimize const value interning for ZST types | Wesley Wiser | -0/+6 | |
| Interning can skip any inhabited ZST type in general. | ||||
| 2020-10-17 | Rollup merge of #76199 - Mark-Simulacrum:void-zero, r=nikomatsakis | Dylan DPC | -1/+6 | |
| Permit uninhabited enums to cast into ints This essentially reverts part of #6204; it is unclear why that [commit](https://github.com/rust-lang/rust/pull/6204/commits/c0f587de34f30b060df8a88c4068740e587b9340) was introduced, and I suspect no one remembers. The changed code was only called from casting checks and appears to not affect any callers of that code (other than permitting this one case). Fixes #75647. | ||||
| 2020-10-13 | Replace absolute paths with relative ones | est31 | -12/+14 | |
| Modern compilers allow reaching external crates like std or core via relative paths in modules outside of lib.rs and main.rs. | ||||
