| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-02-29 | use .iter() instead of .into_iter() on references. | Matthias Krüger | -2/+2 | |
| 2020-02-28 | remove ScalarMaybeUndef::to_bits and make Scalar::to_bits private | Ralf Jung | -1/+1 | |
| 2020-02-28 | use is_empty() instead of len() == x to determine if structs are empty. | Matthias Krüger | -11/+11 | |
| 2020-02-28 | Auto merge of #68505 - skinny121:canonicalize-const-eval-inputs, r=nikomatsakis | bors | -2/+2 | |
| Canonicalize inputs to const eval where needed Canonicalize inputs to const eval, so that they can contain inference variables. Which enables invoking const eval queries even if the current param env has inference variable within it, which can occur during trait selection. This is a reattempt of #67717, in a far less invasive way. Fixes #68477 r? @nikomatsakis cc @eddyb | ||||
| 2020-02-28 | Rollup merge of #69496 - matthiaskrgr:filter_next, r=ecstatic-morse | Dylan DPC | -1/+1 | |
| use find(x) instead of filter(x).next() | ||||
| 2020-02-28 | Rollup merge of #69495 - matthiaskrgr:op_ref, r=oli-obk | Dylan DPC | -1/+1 | |
| don't take redundant references to operands | ||||
| 2020-02-27 | Auto merge of #68434 - varkor:astconv-mismatch-error, r=nikomatsakis | bors | -12/+11 | |
| Move generic arg/param validation to `create_substs_for_generic_args` to resolve various const generics issues This changes some diagnostics, but I think they're around as helpful as the previous ones, and occur infrequently regardless. Fixes https://github.com/rust-lang/rust/issues/68257. Fixes https://github.com/rust-lang/rust/issues/68398. r? @eddyb | ||||
| 2020-02-27 | use find(x) instead of filter(x).next() | Matthias Krüger | -1/+1 | |
| 2020-02-27 | Auto merge of #69507 - JohnTitor:rollup-jqf1gmw, r=JohnTitor | bors | -1/+1 | |
| Rollup of 7 pull requests Successful merges: - #69324 (Backport only: avoid ICE on bad placeholder type) - #69439 (resolve: `lifetimes.rs` -> `late/lifetimes.rs`) - #69473 (update llvm to silence gcc 9 warnings) - #69479 (clarify operator precedence) - #69480 (Clean up E0373 explanation) - #69500 (Simplify the signature of par_for_each_in) - #69505 (Enable setting diagnostic labels) Failed merges: r? @ghost | ||||
| 2020-02-27 | Rollup merge of #69479 - matthiaskrgr:op_pred, r=Dylan-DPC | Yuki Okushi | -1/+1 | |
| clarify operator precedence | ||||
| 2020-02-27 | Auto merge of #67332 - matthewjasper:drop-in-place-cgus, r=michaelwoerister | bors | -4/+21 | |
| Don't instantiate so many copies of drop_in_place Split out from #66703. r? @ghost | ||||
| 2020-02-26 | don't take redundant references to operands | Matthias Krüger | -1/+1 | |
| 2020-02-26 | Auto merge of #67742 - mark-i-m:describe-it, r=matthewjasper | bors | -2/+20 | |
| Generalized article_and_description r? @matthewjasper The logic of finding the right word and article to print seems to be repeated elsewhere... this is an experimental method to unify this logic... | ||||
| 2020-02-26 | clarify operator precedence | Matthias Krüger | -1/+1 | |
| 2020-02-26 | Rollup merge of #69429 - matthiaskrgr:clippy_, r=estebank | Dylan DPC | -3/+3 | |
| remove redundant clones and import | ||||
| 2020-02-24 | Replace uses of Cell::get + Cell::set with Cell::replace. | Ana-Maria | -6/+3 | |
| 2020-02-24 | Also blacklist powerpc-unknown-linux-musl. | Ana-Maria | -9/+12 | |
| 2020-02-24 | librustc{, codegen_ssa,infer,mir_build}: don't clone types that are copy | Matthias Krüger | -3/+3 | |
| 2020-02-22 | remove unneeded fn | mark | -35/+0 | |
| 2020-02-22 | address some review comments/bugs | mark | -0/+2 | |
| 2020-02-22 | article and descr for closures | Mark Mansi | -4/+5 | |
| 2020-02-22 | add generator_kind query | Mark Mansi | -9/+13 | |
| 2020-02-22 | some fixes | Mark Mansi | -7/+4 | |
| 2020-02-22 | Generalized article_and_description | Mark Mansi | -1/+50 | |
| 2020-02-22 | Make return value of `check_generic_arg_count` semantically clearer | varkor | -7/+1 | |
| 2020-02-22 | Refactor `create_substs_for_generic_args` a little | varkor | -6/+11 | |
| 2020-02-21 | Auto merge of #69242 - cjgillot:object_violations, r=Zoxc | bors | -0/+4 | |
| Querify object_safety_violations. Split from #69076 r? @Zoxc | ||||
| 2020-02-21 | Auto merge of #69281 - nnethercote:inline-some-encoding-decoding-methods, ↵ | bors | -0/+2 | |
| r=Centril Inline some encoding and decoding methods. This is a small performance win. r? @Centril | ||||
| 2020-02-20 | Auto merge of #69072 - ecstatic-morse:associated-items, r=petrochenkov | bors | -12/+91 | |
| O(log n) lookup of associated items by name Resolves #68957, in which compile time is quadratic in the number of associated items. This PR makes name lookup use binary search instead of a linear scan to improve its asymptotic performance. As a result, the pathological case from that issue now runs in 8 seconds on my local machine, as opposed to many minutes on the current stable. Currently, method resolution must do a linear scan through all associated items of a type to find one with a certain name. This PR changes the result of the `associated_items` query to a data structure that preserves the definition order of associated items (which is used, e.g., for the layout of trait object vtables) while adding an index of those items sorted by (unhygienic) name. When doing name lookup, we first find all items with the same `Symbol` using binary search, then run hygienic comparison to find the one we are looking for. Ideally, this would be implemented using an insertion-order preserving, hash-based multi-map, but one is not readily available. Someone who is more familiar with identifier hygiene could probably make this better by auditing the uses of the `AssociatedItems` interface. My goal was to preserve the current behavior exactly, even if it seemed strange (I left at least one FIXME to this effect). For example, some places use comparison with `ident.modern()` and some places use `tcx.hygienic_eq` which requires the `DefId` of the containing `impl`. I don't know whether those approaches are equivalent or which one should be preferred. | ||||
| 2020-02-20 | Change FIXME message to indicate plan to handle inference variables within ↵ | Ben Lewis | -2/+2 | |
| this code path. | ||||
| 2020-02-19 | Construct `AssociatedItems` from an iterator instead of a `Vec` | Dylan MacKenzie | -1/+1 | |
| 2020-02-19 | Make lookup of associated item by name O(log n) | Dylan MacKenzie | -11/+83 | |
| 2020-02-19 | Replace `rustc_typeck::Namespace` with `rustc_hir::def::Namespace` | Dylan MacKenzie | -1/+8 | |
| 2020-02-19 | Make is_object_safe a method. | Camille GILLOT | -0/+4 | |
| 2020-02-19 | Use a constructor function per dep node instead of an enum and a single function | John Kåre Alsaker | -6/+4 | |
| 2020-02-19 | Fix cache hit stats | John Kåre Alsaker | -4/+14 | |
| 2020-02-19 | Add a stat for local DefId density | John Kåre Alsaker | -2/+35 | |
| 2020-02-19 | Split query stats into its own file | John Kåre Alsaker | -96/+105 | |
| 2020-02-19 | Add a `storage` query modifier to override the query cache | John Kåre Alsaker | -14/+26 | |
| 2020-02-19 | Add an abstraction for custom query caches | John Kåre Alsaker | -123/+305 | |
| 2020-02-19 | Make `try_get_cached` take closures | John Kåre Alsaker | -39/+47 | |
| 2020-02-19 | Split query execution into hot and cold paths | John Kåre Alsaker | -103/+154 | |
| 2020-02-19 | Inline some encoding and decoding methods. | Nicholas Nethercote | -0/+2 | |
| This is a small performance win. | ||||
| 2020-02-18 | Rollup merge of #69146 - matthewjasper:literal-qualif, r=eddyb | Mazdak Farrokhzad | -2/+38 | |
| Always const qualify literals by type r? @eddyb | ||||
| 2020-02-18 | Blacklist powerpc-unknown-linux-gnu as having non-ignored GNU C ZSTs. | Ana-Maria | -3/+8 | |
| 2020-02-18 | Rollup merge of #69181 - skinny121:const-eval-return, r=oli-obk | Dylan DPC | -6/+13 | |
| Change const eval to just return the value As discussed in https://github.com/rust-lang/rust/pull/68505#discussion_r370956535, the type of consts shouldn't be returned from const eval queries. r? @eddyb cc @nikomatsakis | ||||
| 2020-02-16 | Auto merge of #67953 - cjgillot:split_infer, r=Zoxc | bors | -4/+4 | |
| Split librustc::{traits,infer} to a separate crate rustc_infer This is still very much work in progress. Three functions are between dimensions (at the end of `rustc::traits`), waiting for some dependency breaking scheme. Please tell me if the approach seems sound, and how you would like to split this PR up. The formatting is deliberately off, to ease rebasing. cc #65031 | ||||
| 2020-02-16 | Make librustc compile. | Camille GILLOT | -4/+4 | |
| 2020-02-16 | Code review changes. | Ben Lewis | -2/+7 | |
| 2020-02-15 | Treat NodeIs as pure values for incremental compilation | John Kåre Alsaker | -24/+1 | |
