[INFO] updating cached repository https://github.com/google/rerast [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 7e86f9f6d91f434d8263aafa59b312930c15522e [INFO] checking google/rerast against beta-2019-10-27 for pr-65897 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgoogle%2Frerast" "/workspace/builds/worker-1/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/google/rerast on toolchain beta-2019-10-27 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2019-10-27" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/google/rerast [INFO] removed path dependency rerast_macros from git repo https://github.com/google/rerast [INFO] finished tweaking git repo https://github.com/google/rerast [INFO] tweaked toml for git repo https://github.com/google/rerast written to /workspace/builds/worker-1/source/Cargo.toml [INFO] crate git repo https://github.com/google/rerast already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2019-10-27" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] error: the lock file /workspace/builds/worker-1/source/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] the lockfile is outdated, regenerating it [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2019-10-27" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2019-10-27" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=allow" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2019-10-27" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 2349491d66c28230b704188a2ed637ff61683e6c00abfde8407f54132138f2e5 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "2349491d66c28230b704188a2ed637ff61683e6c00abfde8407f54132138f2e5"` [INFO] [stderr] Checking rerast_macros v0.1.12 [INFO] [stderr] Checking float-cmp v0.4.0 [INFO] [stderr] Checking escargot v0.4.0 [INFO] [stderr] Checking rerast v0.1.71 (/opt/rustwide/workdir) [INFO] [stderr] Checking predicates v1.0.1 [INFO] [stderr] Checking assert_cmd v0.11.1 [INFO] [stderr] error[E0432]: unresolved import `syntax::sess` [INFO] [stderr] --> src/change_to_rule.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | use syntax::sess::ParseSess; [INFO] [stderr] | ^^^^ could not find `sess` in `syntax` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::sess` [INFO] [stderr] --> src/code_substitution.rs:178:17 [INFO] [stderr] | [INFO] [stderr] 178 | use syntax::sess::ParseSess; [INFO] [stderr] | ^^^^ could not find `sess` in `syntax` [INFO] [stderr] [INFO] [stderr] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stderr] --> src/lib.rs:69:1 [INFO] [stderr] | [INFO] [stderr] 69 | #![feature(rustc_private)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stderr] --> src/lib.rs:70:1 [INFO] [stderr] | [INFO] [stderr] 70 | #![feature(box_syntax)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Pat` [INFO] [stderr] --> src/lib.rs:398:69 [INFO] [stderr] | [INFO] [stderr] 398 | if let hir::PatKind::Binding(_, hir_id, ref ident, _) = pat.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/change_to_rule.rs:119:67 [INFO] [stderr] | [INFO] [stderr] 119 | if let hir::ExprKind::Call(ref _expr_fn, ref args) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::ty::TyS<'_>` [INFO] [stderr] --> src/change_to_rule.rs:372:48 [INFO] [stderr] | [INFO] [stderr] 372 | if let TyKind::Param(..) = subtype.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/change_to_rule.rs:380:38 [INFO] [stderr] | [INFO] [stderr] 380 | if let Some(generics) = item.kind.generics() { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `as_symbol` found for type `rustc::hir::map::DefPathData` in the current scope [INFO] [stderr] --> src/change_to_rule.rs:556:63 [INFO] [stderr] | [INFO] [stderr] 556 | write!(qualified_path, "::{}", component.data.as_symbol()).unwrap(); [INFO] [stderr] | ^^^^^^^^^ method not found in `rustc::hir::map::DefPathData` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/definitions.rs:69:52 [INFO] [stderr] | [INFO] [stderr] 69 | } else if let hir::ItemKind::Mod(_) = item.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Expr` [INFO] [stderr] --> src/rule_finder.rs:121:66 [INFO] [stderr] | [INFO] [stderr] 121 | if let hir::ExprKind::Block(block, ..) = &body.value.kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `attrs`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Stmt` [INFO] [stderr] --> src/rule_finder.rs:123:64 [INFO] [stderr] | [INFO] [stderr] 123 | if let hir::StmtKind::Local(local) = &stmt.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:124:82 [INFO] [stderr] | [INFO] [stderr] 124 | if let hir::PatKind::Binding(_, hir_id, ..) = &local.pat.kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] [INFO] [stderr] error[E0614]: type `rustc::hir::HirId` cannot be dereferenced [INFO] [stderr] --> src/rule_finder.rs:125:50 [INFO] [stderr] | [INFO] [stderr] 125 | ... placeholder_ids.push(*hir_id); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `pat` on type `&rustc::hir::Arm` [INFO] [stderr] --> src/rule_finder.rs:92:87 [INFO] [stderr] | [INFO] [stderr] 92 | if let hir::PatKind::Path(hir::QPath::Resolved(None, ref path)) = arm.pat.kind { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:95:82 [INFO] [stderr] | [INFO] [stderr] 95 | ... if let hir::ExprKind::Block(ref block, _) = arm.body.kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/rule_finder.rs:166:45 [INFO] [stderr] | [INFO] [stderr] 166 | if let hir::ItemKind::Mod(_) = item.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/rule_finder.rs:185:68 [INFO] [stderr] | [INFO] [stderr] 185 | if let ExprKind::Match(ref match_expr, ref arms, _) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:186:85 [INFO] [stderr] | [INFO] [stderr] 186 | if let ExprKind::MethodCall(ref _name, ref _tys, ref args) = match_expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Stmt` [INFO] [stderr] --> src/rule_finder.rs:248:72 [INFO] [stderr] | [INFO] [stderr] 248 | if let hir::StmtKind::Semi(ref addr_expr) = block.stmts[0].kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:249:71 [INFO] [stderr] | [INFO] [stderr] 249 | if let hir::ExprKind::AddrOf(_, ref expr) = addr_expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Stmt` [INFO] [stderr] --> src/rule_finder.rs:279:69 [INFO] [stderr] | [INFO] [stderr] 279 | if let hir::StmtKind::Local(ref local) = block.stmts[0].kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:281:70 [INFO] [stderr] | [INFO] [stderr] 281 | if let hir::TyKind::Rptr(_, ref mut_ty) = ref_ty.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Ty` [INFO] [stderr] --> src/rule_finder.rs:312:61 [INFO] [stderr] | [INFO] [stderr] 312 | if let hir::TyKind::TraitObject(ref bounds, _) = ty.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Stmt` [INFO] [stderr] --> src/rule_finder.rs:348:67 [INFO] [stderr] | [INFO] [stderr] 348 | if let hir::StmtKind::Semi(ref expr) = block.stmts[0].kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:349:68 [INFO] [stderr] | [INFO] [stderr] 349 | if let hir::ExprKind::Match(_, ref arms, _) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `pat` on type `rustc::hir::Arm` [INFO] [stderr] --> src/rule_finder.rs:353:84 [INFO] [stderr] | [INFO] [stderr] 353 | if let hir::PatKind::TupleStruct(_, ref patterns, _) = arms[0].pat.kind { [INFO] [stderr] | ^^^ help: a field with a similar name exists: `pats` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/rule_matcher.rs:222:45 [INFO] [stderr] | [INFO] [stderr] 222 | if let hir::ItemKind::Mod(_) = item.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:242:26 [INFO] [stderr] | [INFO] [stderr] 242 | match body.value.kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `attrs`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Stmt` [INFO] [stderr] --> src/rule_matcher.rs:379:53 [INFO] [stderr] | [INFO] [stderr] 379 | if let hir::StmtKind::Semi(ref expr) = stmt.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_matcher.rs:380:64 [INFO] [stderr] | [INFO] [stderr] 380 | if let hir::ExprKind::Call(ref function, _) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_matcher.rs:385:65 [INFO] [stderr] | [INFO] [stderr] 385 | if let hir::ExprKind::Path(ref path) = function.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:479:35 [INFO] [stderr] | [INFO] [stderr] 479 | let result = match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:479:47 [INFO] [stderr] | [INFO] [stderr] 479 | let result = match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:646:64 [INFO] [stderr] | [INFO] [stderr] 646 | "Expression: {:?}\ndidn't match: {:?}", code.kind, self.kind [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:646:75 [INFO] [stderr] | [INFO] [stderr] 646 | "Expression: {:?}\ndidn't match: {:?}", code.kind, self.kind [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Ty` [INFO] [stderr] --> src/rule_matcher.rs:680:14 [INFO] [stderr] | [INFO] [stderr] 680 | self.kind.attempt_match(state, &code.kind) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Ty` [INFO] [stderr] --> src/rule_matcher.rs:680:46 [INFO] [stderr] | [INFO] [stderr] 680 | self.kind.attempt_match(state, &code.kind) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `pat` on type `&rustc::hir::Arm` [INFO] [stderr] --> src/rule_matcher.rs:815:21 [INFO] [stderr] | [INFO] [stderr] 815 | && self.pat.attempt_match(state, &code.pat) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `pat` on type `&'tcx rustc::hir::Arm` [INFO] [stderr] --> src/rule_matcher.rs:815:52 [INFO] [stderr] | [INFO] [stderr] 815 | && self.pat.attempt_match(state, &code.pat) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Pat` [INFO] [stderr] --> src/rule_matcher.rs:842:22 [INFO] [stderr] | [INFO] [stderr] 842 | match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Pat` [INFO] [stderr] --> src/rule_matcher.rs:842:34 [INFO] [stderr] | [INFO] [stderr] 842 | match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Pat` [INFO] [stderr] --> src/rule_matcher.rs:851:87 [INFO] [stderr] | [INFO] [stderr] 851 | } else if let Binding(c_mode, c_hir_id, ref c_name, ref c_pat) = code.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Stmt` [INFO] [stderr] --> src/rule_matcher.rs:1060:22 [INFO] [stderr] | [INFO] [stderr] 1060 | match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Stmt` [INFO] [stderr] --> src/rule_matcher.rs:1060:34 [INFO] [stderr] | [INFO] [stderr] 1060 | match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Item` [INFO] [stderr] --> src/rule_matcher.rs:1101:21 [INFO] [stderr] | [INFO] [stderr] 1101 | && self.kind.attempt_match(state, &code.kind) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/rule_matcher.rs:1101:53 [INFO] [stderr] | [INFO] [stderr] 1101 | && self.kind.attempt_match(state, &code.kind) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:1439:25 [INFO] [stderr] | [INFO] [stderr] 1439 | Some(match expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:1555:53 [INFO] [stderr] | [INFO] [stderr] 1555 | if let hir::ExprKind::Path(ref path) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Stmt` [INFO] [stderr] --> src/rule_matcher.rs:1603:53 [INFO] [stderr] | [INFO] [stderr] 1603 | if let hir::StmtKind::Semi(ref expr) = stmt.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_matcher.rs:1604:63 [INFO] [stderr] | [INFO] [stderr] 1604 | if let hir::ExprKind::Call(ref expr_fn, _) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Pat` [INFO] [stderr] --> src/rule_matcher.rs:1614:69 [INFO] [stderr] | [INFO] [stderr] 1614 | if let hir::PatKind::Binding(_, hir_id, ref ident, _) = pat.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 52 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0432, E0554, E0599, E0609, E0614. [INFO] [stderr] For more information about an error, try `rustc --explain E0432`. [INFO] [stderr] error: could not compile `rerast`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0432]: unresolved import `syntax::sess` [INFO] [stderr] --> src/change_to_rule.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | use syntax::sess::ParseSess; [INFO] [stderr] | ^^^^ could not find `sess` in `syntax` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::sess` [INFO] [stderr] --> src/code_substitution.rs:178:17 [INFO] [stderr] | [INFO] [stderr] 178 | use syntax::sess::ParseSess; [INFO] [stderr] | ^^^^ could not find `sess` in `syntax` [INFO] [stderr] [INFO] [stderr] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stderr] --> src/lib.rs:69:1 [INFO] [stderr] | [INFO] [stderr] 69 | #![feature(rustc_private)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stderr] --> src/lib.rs:70:1 [INFO] [stderr] | [INFO] [stderr] 70 | #![feature(box_syntax)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Pat` [INFO] [stderr] --> src/lib.rs:398:69 [INFO] [stderr] | [INFO] [stderr] 398 | if let hir::PatKind::Binding(_, hir_id, ref ident, _) = pat.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/change_to_rule.rs:119:67 [INFO] [stderr] | [INFO] [stderr] 119 | if let hir::ExprKind::Call(ref _expr_fn, ref args) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::ty::TyS<'_>` [INFO] [stderr] --> src/change_to_rule.rs:372:48 [INFO] [stderr] | [INFO] [stderr] 372 | if let TyKind::Param(..) = subtype.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/change_to_rule.rs:380:38 [INFO] [stderr] | [INFO] [stderr] 380 | if let Some(generics) = item.kind.generics() { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `as_symbol` found for type `rustc::hir::map::DefPathData` in the current scope [INFO] [stderr] --> src/change_to_rule.rs:556:63 [INFO] [stderr] | [INFO] [stderr] 556 | write!(qualified_path, "::{}", component.data.as_symbol()).unwrap(); [INFO] [stderr] | ^^^^^^^^^ method not found in `rustc::hir::map::DefPathData` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/definitions.rs:69:52 [INFO] [stderr] | [INFO] [stderr] 69 | } else if let hir::ItemKind::Mod(_) = item.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Expr` [INFO] [stderr] --> src/rule_finder.rs:121:66 [INFO] [stderr] | [INFO] [stderr] 121 | if let hir::ExprKind::Block(block, ..) = &body.value.kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `attrs`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Stmt` [INFO] [stderr] --> src/rule_finder.rs:123:64 [INFO] [stderr] | [INFO] [stderr] 123 | if let hir::StmtKind::Local(local) = &stmt.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:124:82 [INFO] [stderr] | [INFO] [stderr] 124 | if let hir::PatKind::Binding(_, hir_id, ..) = &local.pat.kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] [INFO] [stderr] error[E0614]: type `rustc::hir::HirId` cannot be dereferenced [INFO] [stderr] --> src/rule_finder.rs:125:50 [INFO] [stderr] | [INFO] [stderr] 125 | ... placeholder_ids.push(*hir_id); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `pat` on type `&rustc::hir::Arm` [INFO] [stderr] --> src/rule_finder.rs:92:87 [INFO] [stderr] | [INFO] [stderr] 92 | if let hir::PatKind::Path(hir::QPath::Resolved(None, ref path)) = arm.pat.kind { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:95:82 [INFO] [stderr] | [INFO] [stderr] 95 | ... if let hir::ExprKind::Block(ref block, _) = arm.body.kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/rule_finder.rs:166:45 [INFO] [stderr] | [INFO] [stderr] 166 | if let hir::ItemKind::Mod(_) = item.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/rule_finder.rs:185:68 [INFO] [stderr] | [INFO] [stderr] 185 | if let ExprKind::Match(ref match_expr, ref arms, _) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:186:85 [INFO] [stderr] | [INFO] [stderr] 186 | if let ExprKind::MethodCall(ref _name, ref _tys, ref args) = match_expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Stmt` [INFO] [stderr] --> src/rule_finder.rs:248:72 [INFO] [stderr] | [INFO] [stderr] 248 | if let hir::StmtKind::Semi(ref addr_expr) = block.stmts[0].kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:249:71 [INFO] [stderr] | [INFO] [stderr] 249 | if let hir::ExprKind::AddrOf(_, ref expr) = addr_expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Stmt` [INFO] [stderr] --> src/rule_finder.rs:279:69 [INFO] [stderr] | [INFO] [stderr] 279 | if let hir::StmtKind::Local(ref local) = block.stmts[0].kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:281:70 [INFO] [stderr] | [INFO] [stderr] 281 | if let hir::TyKind::Rptr(_, ref mut_ty) = ref_ty.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Ty` [INFO] [stderr] --> src/rule_finder.rs:312:61 [INFO] [stderr] | [INFO] [stderr] 312 | if let hir::TyKind::TraitObject(ref bounds, _) = ty.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Stmt` [INFO] [stderr] --> src/rule_finder.rs:348:67 [INFO] [stderr] | [INFO] [stderr] 348 | if let hir::StmtKind::Semi(ref expr) = block.stmts[0].kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_finder.rs:349:68 [INFO] [stderr] | [INFO] [stderr] 349 | if let hir::ExprKind::Match(_, ref arms, _) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `pat` on type `rustc::hir::Arm` [INFO] [stderr] --> src/rule_finder.rs:353:84 [INFO] [stderr] | [INFO] [stderr] 353 | if let hir::PatKind::TupleStruct(_, ref patterns, _) = arms[0].pat.kind { [INFO] [stderr] | ^^^ help: a field with a similar name exists: `pats` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/rule_matcher.rs:222:45 [INFO] [stderr] | [INFO] [stderr] 222 | if let hir::ItemKind::Mod(_) = item.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:242:26 [INFO] [stderr] | [INFO] [stderr] 242 | match body.value.kind { [INFO] [stderr] | ^^^^ unknown field [INFO] [stderr] | [INFO] [stderr] = note: available fields are: `hir_id`, `node`, `attrs`, `span` [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Stmt` [INFO] [stderr] --> src/rule_matcher.rs:379:53 [INFO] [stderr] | [INFO] [stderr] 379 | if let hir::StmtKind::Semi(ref expr) = stmt.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_matcher.rs:380:64 [INFO] [stderr] | [INFO] [stderr] 380 | if let hir::ExprKind::Call(ref function, _) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_matcher.rs:385:65 [INFO] [stderr] | [INFO] [stderr] 385 | if let hir::ExprKind::Path(ref path) = function.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:479:35 [INFO] [stderr] | [INFO] [stderr] 479 | let result = match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:479:47 [INFO] [stderr] | [INFO] [stderr] 479 | let result = match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:646:64 [INFO] [stderr] | [INFO] [stderr] 646 | "Expression: {:?}\ndidn't match: {:?}", code.kind, self.kind [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:646:75 [INFO] [stderr] | [INFO] [stderr] 646 | "Expression: {:?}\ndidn't match: {:?}", code.kind, self.kind [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Ty` [INFO] [stderr] --> src/rule_matcher.rs:680:14 [INFO] [stderr] | [INFO] [stderr] 680 | self.kind.attempt_match(state, &code.kind) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Ty` [INFO] [stderr] --> src/rule_matcher.rs:680:46 [INFO] [stderr] | [INFO] [stderr] 680 | self.kind.attempt_match(state, &code.kind) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `pat` on type `&rustc::hir::Arm` [INFO] [stderr] --> src/rule_matcher.rs:815:21 [INFO] [stderr] | [INFO] [stderr] 815 | && self.pat.attempt_match(state, &code.pat) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `pat` on type `&'tcx rustc::hir::Arm` [INFO] [stderr] --> src/rule_matcher.rs:815:52 [INFO] [stderr] | [INFO] [stderr] 815 | && self.pat.attempt_match(state, &code.pat) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Pat` [INFO] [stderr] --> src/rule_matcher.rs:842:22 [INFO] [stderr] | [INFO] [stderr] 842 | match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Pat` [INFO] [stderr] --> src/rule_matcher.rs:842:34 [INFO] [stderr] | [INFO] [stderr] 842 | match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Pat` [INFO] [stderr] --> src/rule_matcher.rs:851:87 [INFO] [stderr] | [INFO] [stderr] 851 | } else if let Binding(c_mode, c_hir_id, ref c_name, ref c_pat) = code.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Stmt` [INFO] [stderr] --> src/rule_matcher.rs:1060:22 [INFO] [stderr] | [INFO] [stderr] 1060 | match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Stmt` [INFO] [stderr] --> src/rule_matcher.rs:1060:34 [INFO] [stderr] | [INFO] [stderr] 1060 | match (&self.kind, &code.kind) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Item` [INFO] [stderr] --> src/rule_matcher.rs:1101:21 [INFO] [stderr] | [INFO] [stderr] 1101 | && self.kind.attempt_match(state, &code.kind) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Item` [INFO] [stderr] --> src/rule_matcher.rs:1101:53 [INFO] [stderr] | [INFO] [stderr] 1101 | && self.kind.attempt_match(state, &code.kind) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:1439:25 [INFO] [stderr] | [INFO] [stderr] 1439 | Some(match expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Expr` [INFO] [stderr] --> src/rule_matcher.rs:1555:53 [INFO] [stderr] | [INFO] [stderr] 1555 | if let hir::ExprKind::Path(ref path) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Stmt` [INFO] [stderr] --> src/rule_matcher.rs:1603:53 [INFO] [stderr] | [INFO] [stderr] 1603 | if let hir::StmtKind::Semi(ref expr) = stmt.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&rustc::hir::ptr::P` [INFO] [stderr] --> src/rule_matcher.rs:1604:63 [INFO] [stderr] | [INFO] [stderr] 1604 | if let hir::ExprKind::Call(ref expr_fn, _) = expr.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error[E0609]: no field `kind` on type `&'tcx rustc::hir::Pat` [INFO] [stderr] --> src/rule_matcher.rs:1614:69 [INFO] [stderr] | [INFO] [stderr] 1614 | if let hir::PatKind::Binding(_, hir_id, ref ident, _) = pat.kind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 52 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0432, E0554, E0599, E0609, E0614. [INFO] [stderr] For more information about an error, try `rustc --explain E0432`. [INFO] [stderr] error: could not compile `rerast`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "2349491d66c28230b704188a2ed637ff61683e6c00abfde8407f54132138f2e5"` [INFO] running `"docker" "rm" "-f" "2349491d66c28230b704188a2ed637ff61683e6c00abfde8407f54132138f2e5"` [INFO] [stdout] 2349491d66c28230b704188a2ed637ff61683e6c00abfde8407f54132138f2e5