Skip to content

Commit

Permalink
Move prelude crate names into Session.
Browse files Browse the repository at this point in the history
Avoid hardcoding and special-casing the `std` crate name in the item
path logic by moving the prelude crate name logic into the `Session`
type so it can be reused in the item path logic and resolve module.
  • Loading branch information
davidtwco committed Oct 1, 2018
1 parent 9e2d6e1 commit 4cbd397
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 8 deletions.
13 changes: 6 additions & 7 deletions src/librustc/session/mod.rs
Expand Up @@ -28,17 +28,16 @@ use util::common::ProfileQueriesMsg;
use rustc_data_structures::base_n;
use rustc_data_structures::sync::{self, Lrc, Lock, LockCell, OneThread, Once, RwLock};

use syntax::ast::NodeId;
use errors::{self, DiagnosticBuilder, DiagnosticId, Applicability};
use errors::emitter::{Emitter, EmitterWriter};
use syntax::ast::{self, NodeId};
use syntax::edition::Edition;
use syntax::feature_gate::{self, AttributeType};
use syntax::json::JsonEmitter;
use syntax::feature_gate;
use syntax::parse;
use syntax::parse::ParseSess;
use syntax::{ast, source_map};
use syntax::feature_gate::AttributeType;
use syntax_pos::{MultiSpan, Span, symbol::Symbol};
use syntax::source_map;
use syntax::symbol::Symbol;
use syntax::parse::{self, ParseSess};
use syntax_pos::{MultiSpan, Span};
use util::profiling::SelfProfiler;

use rustc_target::spec::PanicStrategy;
Expand Down
4 changes: 3 additions & 1 deletion src/librustc/ty/item_path.rs
Expand Up @@ -281,7 +281,9 @@ impl<'a, 'gcx, 'tcx> TyCtxt<'a, 'gcx, 'tcx> {
// In particular, don't recurse to print the crate root if we
// just printed `std`. In doing this, we are able to add
// `crate::` to trait import suggestions.
DefPathData::CrateRoot if data.as_interned_str() == "std" => {},
DefPathData::CrateRoot if self.sess.extern_prelude.contains(
&data.as_interned_str().as_symbol()
) => {},
_ => self.push_item_path(buffer, parent_def_id),
}

Expand Down

0 comments on commit 4cbd397

Please sign in to comment.