| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2019-01-10 | Fix rebase | Vadim Petrochenkov | -1/+1 | |
| 2019-01-10 | Fix a hole in generic parameter import future-proofing | Vadim Petrochenkov | -5/+26 | |
| Add some tests for buggy derive helpers | ||||
| 2019-01-10 | Stabilize `uniform_paths` | Vadim Petrochenkov | -19/+10 | |
| 2019-01-10 | resolve: Prohibit use of imported tool modules | Vadim Petrochenkov | -0/+7 | |
| 2019-01-10 | resolve: Prohibit use of imported non-macro attributes | Vadim Petrochenkov | -1/+18 | |
| 2019-01-10 | resolve: Prohibit use of uniform paths in macros originating from 2015 edition | Vadim Petrochenkov | -4/+9 | |
| ...while still keeping ambiguity errors future-proofing for uniform paths. This corner case is not going to be stabilized for 1.32 and needs some more general experiments about retrofitting 2018 import rules to 2015 edition | ||||
| 2019-01-10 | resolve: Assign `pub` and `pub(crate)` visibilities to `macro_rules` items | Vadim Petrochenkov | -3/+7 | |
| 2019-01-10 | resolve: Fix an ICE in import validation | Vadim Petrochenkov | -6/+12 | |
| 2019-01-10 | resolve: Avoid "self-confirming" resolutions in import validation | Vadim Petrochenkov | -21/+43 | |
| 2019-01-04 | resolve: Never override real bindings with `Def::Err`s from error recovery | Vadim Petrochenkov | -0/+4 | |
| 2019-01-04 | resolve: Fix another ICE in import validation | Vadim Petrochenkov | -5/+7 | |
| 2018-12-03 | Rollup merge of #56366 - alexreg:stabilise-self_in_typedefs, r=Centril | kennytm | -16/+4 | |
| Stabilize self_in_typedefs feature [**Tracking Issue**](https://github.com/rust-lang/rust/issues/49303) r? @centril | ||||
| 2018-12-01 | resolve: Support aliasing local crate root in extern prelude | Vadim Petrochenkov | -4/+24 | |
| 2018-11-30 | Removed feature gate. | Alexander Regueiro | -16/+4 | |
| 2018-11-28 | resolve: Fix false-positives from lint `absolute_paths_not_starting_with_crate` | Vadim Petrochenkov | -1/+1 | |
| 2018-11-27 | resolve: Extern prelude is for type namespace only | Vadim Petrochenkov | -1/+3 | |
| 2018-11-27 | resolve: Suggest `crate::` for resolving ambiguities when appropriate | Vadim Petrochenkov | -16/+31 | |
| More precise spans for ambiguities from macros | ||||
| 2018-11-27 | resolve: Fallback to extern prelude in 2015 imports used from global 2018 ↵ | Vadim Petrochenkov | -10/+47 | |
| edition | ||||
| 2018-11-27 | resolve: Generalize `early_resolve_ident_in_lexical_scope` slightly | Vadim Petrochenkov | -82/+78 | |
| Flatten `ModuleOrUniformRoot` variants | ||||
| 2018-11-27 | resolve: Fallback to uniform paths in 2015 imports used from global 2018 edition | Vadim Petrochenkov | -35/+98 | |
| 2018-11-27 | resolve: Implement edition hygiene for imports and absolute paths | Vadim Petrochenkov | -46/+50 | |
| Use per-span hygiene in a few other places in resolve Prefer `rust_2015`/`rust_2018` helpers to comparing editions | ||||
| 2018-11-25 | resolve: Fix some more asserts in import validation | Vadim Petrochenkov | -1/+2 | |
| 2018-11-25 | resolve: Fix bad span arithmetics in import conflict diagnostics | Vadim Petrochenkov | -5/+5 | |
| 2018-11-25 | resolve: Prohibit relative paths in visibilities on 2018 edition | Vadim Petrochenkov | -1/+12 | |
| 2018-11-22 | resolve: Fix some asserts in import validation | Vadim Petrochenkov | -2/+4 | |
| 2018-11-21 | Auto merge of #56117 - petrochenkov:iempty, r=eddyb | bors | -1/+4 | |
| resolve: Make "empty import canaries" invisible from other crates Empty imports `use prefix::{};` are desugared into `use prefix::{self as _};` to make sure the prefix is checked for privacy/stability/etc. This caused issues in cross-crate scenarios because gensyms are lost in crate metadata (the `_` is a gensym). Fixes https://github.com/rust-lang/rust/issues/55811 | ||||
| 2018-11-21 | Auto merge of #52591 - eddyb:functional-snakes, r=oli-obk | bors | -10/+10 | |
| rustc: remove {FxHash,Node,DefId,HirId,ItemLocal}{Map,Set} "constructor" fns. These are cruft left over from a time when `Foo::default()` didn't "just work". | ||||
| 2018-11-21 | rustc: remove {FxHash,Node,DefId,HirId,ItemLocal}{Map,Set} "constructor" fns. | Eduard-Mihai Burtescu | -10/+10 | |
| 2018-11-21 | resolve: Make "empty import canaries" invisible from other crates | Vadim Petrochenkov | -1/+4 | |
| 2018-11-21 | Stabilize `extern_crate_item_prelude` | Vadim Petrochenkov | -15/+5 | |
| 2018-11-18 | Fix rebase | Vadim Petrochenkov | -15/+17 | |
| 2018-11-18 | Add a couple more tests + address review comments | Vadim Petrochenkov | -1/+7 | |
| 2018-11-18 | resolve: Refactor away `DeterminacyExt` | Vadim Petrochenkov | -40/+27 | |
| 2018-11-18 | resolve: Future-proof against imports referring to local variables and ↵ | Vadim Petrochenkov | -1/+35 | |
| generic parameters | ||||
| 2018-11-18 | resolve: Avoid sentence breaks in diagnostics | Vadim Petrochenkov | -13/+13 | |
| 2018-11-18 | resolve: Support resolving macros without leaving traces | Vadim Petrochenkov | -8/+14 | |
| 2018-11-18 | resolve: Avoid marking `extern crate` items as used in certain cases | Vadim Petrochenkov | -7/+20 | |
| 2018-11-18 | resolve: Reintroduce feature gate for uniform paths in imports | Vadim Petrochenkov | -26/+56 | |
| 2018-11-18 | Fix ICEs from imports of items not defined in modules | Vadim Petrochenkov | -5/+16 | |
| 2018-11-18 | resolve: Tweak some articles in ambiguity diagnostics | Vadim Petrochenkov | -5/+5 | |
| 2018-11-18 | resolve: Recover "did you mean" suggestions in imports | Vadim Petrochenkov | -38/+30 | |
| 2018-11-18 | resolve: Check resolution consistency for import paths and multi-segment ↵ | Vadim Petrochenkov | -137/+199 | |
| macro paths | ||||
| 2018-11-18 | resolve: Resolve single-segment imports using in-scope resolution on 2018 ↵ | Vadim Petrochenkov | -121/+133 | |
| edition | ||||
| 2018-11-18 | resolve: More precise determinacy tracking during import/macro resolution | Vadim Petrochenkov | -127/+160 | |
| 2018-11-18 | resolve: Improve diagnostics for resolution ambiguities | Vadim Petrochenkov | -134/+291 | |
| 2018-11-18 | resolve: Simplify ambiguity checking for built-in attributes | Vadim Petrochenkov | -11/+2 | |
| 2018-11-18 | resolve: Resolve multi-segment imports using in-scope resolution on 2018 edition | Vadim Petrochenkov | -66/+47 | |
| 2018-11-18 | resolve: Stop generating uniform path canaries | Vadim Petrochenkov | -269/+13 | |
| 2018-11-12 | Make `NodeId` a `newtype_index` to enable niche optimizations | Oliver Scherer | -1/+1 | |
| 2018-11-11 | Rollup merge of #55630 - petrochenkov:noprelude, r=Centril | kennytm | -4/+8 | |
| resolve: Filter away macro prelude in modules with `#[no_implicit_prelude]` on 2018 edition This is a tiny thing. For historical reasons macro prelude (macros from `#[macro_use] extern crate ...`, including `extern crate std`) is still available in modules with `#[no_implicit_prelude]`. This PR provides proper isolation and removes those names from scope. `#[no_implicit_prelude]` modules still have built-in types (`u8`), built-in attributes (`#[inline]`) and built-in macros (`env!("PATH")`) in scope. We can introduce some `#[no_implicit_prelude_at_all]` to remove those as well, but that's a separate issue. The change is done only on 2018 edition for backward compatibility. I'm pretty sure this can be done on 2015 as well because `#[no_implicit_prelude]` is rarely used, but I don't want to go through the crater/deprecation process right now, maybe later. cc https://github.com/rust-lang/rust/issues/53977 r? @ghost | ||||
