Upgrade plugins

This commit is contained in:
Manish Goregaokar 2015-06-14 20:15:31 +05:30
parent 9fbffff604
commit 3cdc412a4c
4 changed files with 9 additions and 7 deletions

View file

@ -13,7 +13,7 @@
//! - `#[dom_struct]` : Implies `#[privatize]`,`#[jstraceable]`, and `#[must_root]`. //! - `#[dom_struct]` : Implies `#[privatize]`,`#[jstraceable]`, and `#[must_root]`.
//! Use this for structs that correspond to a DOM type //! Use this for structs that correspond to a DOM type
#![feature(plugin_registrar, quote, plugin, box_syntax, rustc_private, collections)] #![feature(plugin_registrar, quote, plugin, box_syntax, rustc_private)]
#[macro_use] #[macro_use]
extern crate syntax; extern crate syntax;

View file

@ -34,12 +34,12 @@ impl LintPass for StrToStringPass {
fn is_str(cx: &Context, expr: &ast::Expr) -> bool { fn is_str(cx: &Context, expr: &ast::Expr) -> bool {
fn walk_ty<'t>(ty: ty::Ty<'t>) -> ty::Ty<'t> { fn walk_ty<'t>(ty: ty::Ty<'t>) -> ty::Ty<'t> {
match ty.sty { match ty.sty {
ty::ty_ptr(ref tm) | ty::ty_rptr(_, ref tm) => walk_ty(tm.ty), ty::TyRef(_, ref tm) | ty::TyRawPtr(ref tm) => walk_ty(tm.ty),
_ => ty _ => ty
} }
} }
match walk_ty(expr_ty(cx.tcx, expr)).sty { match walk_ty(expr_ty(cx.tcx, expr)).sty {
ty::ty_str => true, ty::TyStr => true,
_ => false _ => false
} }
} }

View file

@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use syntax::{ast, codemap, visit, ast_map}; use syntax::{ast, codemap, visit};
use syntax::attr::AttrMetaMethods; use syntax::attr::AttrMetaMethods;
use rustc::ast_map;
use rustc::lint::{Context, LintPass, LintArray}; use rustc::lint::{Context, LintPass, LintArray};
use rustc::middle::ty::expr_ty; use rustc::middle::ty::expr_ty;
use rustc::middle::{ty, def}; use rustc::middle::{ty, def};
@ -159,8 +160,8 @@ impl LintPass for UnrootedPass {
let t = expr_ty(cx.tcx, &*expr); let t = expr_ty(cx.tcx, &*expr);
match t.sty { match t.sty {
ty::ty_struct(did, _) | ty::TyStruct(did, _) |
ty::ty_enum(did, _) => { ty::TyEnum(did, _) => {
if ty::has_attr(cx.tcx, did, "must_root") { if ty::has_attr(cx.tcx, did, "must_root") {
cx.span_lint(UNROOTED_MUST_ROOT, expr.span, cx.span_lint(UNROOTED_MUST_ROOT, expr.span,
&format!("Expression of type {} must be rooted", t.repr(cx.tcx))); &format!("Expression of type {} must be rooted", t.repr(cx.tcx)));

View file

@ -2,11 +2,12 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use rustc::ast_map;
use rustc::lint::Context; use rustc::lint::Context;
use rustc::middle::{ty, def}; use rustc::middle::{ty, def};
use syntax::ptr::P; use syntax::ptr::P;
use syntax::{ast, ast_map}; use syntax::ast;
use syntax::ast::{TyPath, Path, AngleBracketedParameters, PathSegment, Ty}; use syntax::ast::{TyPath, Path, AngleBracketedParameters, PathSegment, Ty};
use syntax::attr::mark_used; use syntax::attr::mark_used;