-use syntax::{ast, panictry};
-use syntax::ext::base::{self, *};
-use syntax::parse::{self, token, DirectoryOwnership};
+use syntax_expand::panictry;
+use syntax_expand::base::{self, *};
+use syntax::ast;
+use syntax::parse::{self, DirectoryOwnership};
use syntax::print::pprust;
use syntax::ptr::P;
use syntax::symbol::Symbol;
+use syntax::token;
use syntax::tokenstream::TokenStream;
use syntax::early_buffered_lints::BufferedEarlyLintId;
None => return DummyResult::any(sp),
};
// The file will be added to the code map by the parser
- let file = cx.resolve_path(file, sp);
+ let file = match cx.resolve_path(file, sp) {
+ Ok(f) => f,
+ Err(mut err) => {
+ err.emit();
+ return DummyResult::any(sp);
+ },
+ };
let directory_ownership = DirectoryOwnership::Owned { relative: None };
let p = parse::new_sub_parser_from_file(cx.parse_sess(), &file, directory_ownership, None, sp);
Some(f) => f,
None => return DummyResult::any(sp)
};
- let file = cx.resolve_path(file, sp);
+ let file = match cx.resolve_path(file, sp) {
+ Ok(f) => f,
+ Err(mut err) => {
+ err.emit();
+ return DummyResult::any(sp);
+ },
+ };
match cx.source_map().load_binary_file(&file) {
Ok(bytes) => match std::str::from_utf8(&bytes) {
Ok(src) => {
Some(f) => f,
None => return DummyResult::any(sp)
};
- let file = cx.resolve_path(file, sp);
+ let file = match cx.resolve_path(file, sp) {
+ Ok(f) => f,
+ Err(mut err) => {
+ err.emit();
+ return DummyResult::any(sp);
+ },
+ };
match cx.source_map().load_binary_file(&file) {
Ok(bytes) => {
base::MacEager::expr(cx.expr_lit(sp, ast::LitKind::ByteStr(Lrc::new(bytes))))