| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-04-28 | also run some generator tests without MIR optimizations | Ralf Jung | -0/+15 | |
| 2020-04-19 | Auto merge of #70015 - jonas-schievink:gen-needs-drop, r=matthewjasper | bors | -13/+9 | |
| Make `needs_drop` less pessimistic on generators Generators only have non-trivial drop logic when they may store (in upvars or across yields) a type that does. This prevents generation of some unnecessary MIR in simple generators. There might be some impact on compile times, but this is probably limited in real-world applications. ~~This builds off of https://github.com/rust-lang/rust/pull/69814 since that contains some fixes that are made relevant by *this* PR (see https://github.com/rust-lang/rust/pull/69814#issuecomment-599147269).~~ (this has been merged) | ||||
| 2020-04-18 | Add label to item source of bound obligation | Esteban Küber | -2/+2 | |
| 2020-04-17 | Make `needs_drop` less pessimistic on generators | Jonas Schievink | -13/+9 | |
| 2020-04-13 | Update test after rebase | Tyler Mandry | -2/+2 | |
| 2020-04-13 | Incorporate feedback into diagnostics | Tyler Mandry | -4/+4 | |
| 2020-04-13 | Use "generator" instead of "future" when appropriate | Tyler Mandry | -6/+6 | |
| 2020-04-13 | Don't annotate type when type is opaque | Tyler Mandry | -1/+1 | |
| 2020-04-13 | Improve span label | Tyler Mandry | -2/+2 | |
| 2020-04-13 | Add test for #68112 (existing output) | Tyler Mandry | -0/+96 | |
| 2020-04-08 | Small tweaks to required bound span | Esteban Küber | -4/+4 | |
| 2020-03-26 | introduce `negative_impls` feature gate and document | Niko Matsakis | -8/+9 | |
| They used to be covered by `optin_builtin_traits` but negative impls are now applicable to all traits, not just auto traits. This also adds docs in the unstable book for the current state of auto traits. | ||||
| 2020-03-18 | Rollup merge of #69837 - jonas-schievink:gen-discr-opt, r=tmandry | Mazdak Farrokhzad | -7/+141 | |
| Use smaller discriminants for generators Closes https://github.com/rust-lang/rust/issues/69815 I'm not yet sure about the runtime performance impact of this, so I'll try running this on some benchmarks (if I can find any). (Update: No impact on the benchmarks I've measured on) * [x] Add test with a generator that has exactly 256 total states * [x] Add test with a generator that has more than 256 states so that it needs to use a u16 discriminant * [x] Add tests for the size of `Option<[generator]>` * [x] Add tests for the `discriminant_value` intrinsic in all cases | ||||
| 2020-03-16 | Rollup merge of #69867 - ↵ | Dylan DPC | -0/+1 | |
| ayushmishra2005:doc/61137-add-long-error-code-e0628, r=Dylan-DPC Add long error explanation for E0628 Add long explanation for the E0628 error code Part of #61137 r? @GuillaumeGomez | ||||
| 2020-03-14 | Fix rebase fallout | Jonas Schievink | -2/+2 | |
| 2020-03-14 | Add a test for generator discriminants | Jonas Schievink | -0/+134 | |
| 2020-03-14 | Use smaller discriminants for generators | Jonas Schievink | -5/+5 | |
| 2020-03-14 | Auto merge of #69716 - jonas-schievink:generator-size, r=tmandry | bors | -1/+103 | |
| Don't store locals in generators that are immediately overwritten with the resume argument This fixes https://github.com/rust-lang/rust/issues/69672 and makes https://github.com/rust-lang/rust/pull/69033 pass the async fn size tests again (in other words, there will be no size regression of async fn if both this and https://github.com/rust-lang/rust/pull/69033 land). ~~This is a small botch and I'd rather have a more precise analysis, but that seems much harder to pull off, so this special-cases `Yield` terminators that store the resume argument into a simple local (ie. without any field projections) and explicitly marks that local as "not live" in the suspend point of that yield. We know that this local does not need to be stored in the generator for this suspend point because the next resume would immediately overwrite it with the passed-in resume argument anyways. The local might still end up in the state if it is used across another yield.~~ (this now properly updates the dataflow framework to handle this case) | ||||
| 2020-03-10 | Add long error explanation for E0628 #61137 | Ayush Kumar Mishra | -0/+1 | |
| 2020-03-09 | Add test for issue-64620 | Yuki Okushi | -0/+18 | |
| 2020-03-06 | Add test for generator sizes with resume arguments | Jonas Schievink | -0/+28 | |
| 2020-03-05 | Move stray generator test into the `generator` dir | Jonas Schievink | -0/+70 | |
| 2020-03-04 | Move formatting to different function | Jonas Schievink | -1/+5 | |
| This slims down the generator MIR considerably, which makes debugging easier | ||||
| 2020-02-20 | Add regression test | Jonas Schievink | -0/+30 | |
| 2020-02-16 | Do not ICE when encountering `yield` inside `async` block | Esteban Küber | -0/+15 | |
| 2020-02-12 | Account for `Pin::new(_)` and `Pin::new(Box::new(_))` when `Box::pin(_)` ↵ | Esteban Küber | -2/+2 | |
| would be applicable | ||||
| 2020-02-10 | add main function to issue-69017 test | Chris Simpkins | -0/+2 | |
| 2020-02-10 | add issue 69017 test | Chris Simpkins | -0/+16 | |
| 2020-02-06 | Ignore panic-drops-resume.rs on wasm/emscripten | Jonas Schievink | -0/+2 | |
| It does not have unwinding support | ||||
| 2020-02-04 | Remove obsolete test | Jonas Schievink | -49/+0 | |
| 2020-02-04 | Update error message with too many parameters | Jonas Schievink | -2/+3 | |
| 2020-02-04 | Add more tests for generator resume arguments | Jonas Schievink | -0/+67 | |
| 2020-02-03 | Fix miscompilation | Jonas Schievink | -0/+45 | |
| 2020-02-02 | Teach dropck about resume arguments | Jonas Schievink | -3/+52 | |
| 2020-02-02 | Add test for E0628 (too many generator parameters) | Jonas Schievink | -0/+15 | |
| 2020-02-02 | Add tests for generator resume arguments | Jonas Schievink | -0/+135 | |
| 2020-02-02 | Fix error message on type mismatch in generator | Jonas Schievink | -0/+41 | |
| Instead of "closure is expected to take 0 arguments" we now get the expected type mismatch error. | ||||
| 2020-02-02 | Adjust tests to type inference changes | Jonas Schievink | -18/+49 | |
| This makes some error messages ungreat, but those seem to be preexisting bugs that also apply to closures / return position `impl Trait` in general. | ||||
| 2020-02-02 | Add a resume type parameter to `Generator` | Jonas Schievink | -67/+70 | |
| 2020-02-02 | Auto merge of #68672 - jonas-schievink:dedup-witness, r=Zoxc | bors | -1/+1 | |
| Deduplicate types in the generator witness For the `await-call-tree` benchmark this often reduces the types inside the witness from 12 to 2. | ||||
| 2020-02-01 | Deduplicate generator interior types | Jonas Schievink | -1/+1 | |
| 2020-01-31 | Auto merge of #68080 - varkor:declared-here, r=petrochenkov | bors | -1/+1 | |
| Address inconsistency in using "is" with "declared here" "is" was generally used for NLL diagnostics, but not other diagnostics. Using "is" makes the diagnostics sound more natural and readable, so it seems sensible to commit to them throughout. r? @Centril | ||||
| 2020-01-24 | Normalise diagnostics with respect to "the X is declared/defined here" | varkor | -1/+1 | |
| 2020-01-23 | Make pointers to statics internal | Matthew Jasper | -0/+29 | |
| 2020-01-15 | wrap expr id into GeneratorInteriorTypeCause | csmoe | -1/+1 | |
| 2020-01-09 | Address review comments + Update NLL tests | Vadim Petrochenkov | -3/+3 | |
| 2020-01-09 | Update tests | Vadim Petrochenkov | -2/+28 | |
| 2019-12-23 | Yield is an expression form, not a statement. | Donough Liu | -6/+9 | |
| 2019-12-08 | async/await: more improvements to non-send errors | David Wood | -5/+12 | |
| Signed-off-by: David Wood <david@davidtw.co> | ||||
| 2019-11-26 | Record temporary static references in generator witnesses | Matthew Jasper | -0/+16 | |
