[INFO] fetching crate fnconcat 0.2.3... [INFO] checking fnconcat-0.2.3 against try#ea663bba38739867a4b75ac820991b4f5d093c3b for pr-62262-1 [INFO] extracting crate fnconcat 0.2.3 into /workspace/builds/worker-2/source [INFO] validating manifest of crates.io crate fnconcat 0.2.3 on toolchain ea663bba38739867a4b75ac820991b4f5d093c3b [INFO] running `"/workspace/cargo-home/bin/cargo" "+ea663bba38739867a4b75ac820991b4f5d093c3b" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate fnconcat 0.2.3 [INFO] finished tweaking crates.io crate fnconcat 0.2.3 [INFO] tweaked toml for crates.io crate fnconcat 0.2.3 written to /workspace/builds/worker-2/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+ea663bba38739867a4b75ac820991b4f5d093c3b" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+ea663bba38739867a4b75ac820991b4f5d093c3b" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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=forbid" "-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" "+ea663bba38739867a4b75ac820991b4f5d093c3b" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] b3428c28f81a1b5283cd53d06f8e3800a90112aad5b6f3889a413815c0dec8fb [INFO] running `"docker" "start" "-a" "b3428c28f81a1b5283cd53d06f8e3800a90112aad5b6f3889a413815c0dec8fb"` [INFO] [stderr] Compiling fnconcat v0.2.3 (/opt/rustwide/workdir) [INFO] [stderr] error: expected one of `,`, `@`, `]`, or `|`, found `..` [INFO] [stderr] --> src/lib.rs:102:23 [INFO] [stderr] | [INFO] [stderr] 102 | ref rest..] if delim.delim == token::DelimToken::Bracket => { [INFO] [stderr] | ^^ expected one of `,`, `@`, `]`, or `|` here [INFO] [stderr] [INFO] [stderr] error[E0557]: feature has been removed [INFO] [stderr] --> src/lib.rs:6:61 [INFO] [stderr] | [INFO] [stderr] 6 | #![feature(plugin_registrar, rustc_private, slice_patterns, advanced_slice_patterns)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: merged into `#![feature(slice_patterns)]` [INFO] [stderr] --> src/lib.rs:6:61 [INFO] [stderr] | [INFO] [stderr] 6 | #![feature(plugin_registrar, rustc_private, slice_patterns, advanced_slice_patterns)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: expected one of `,`, `@`, `]`, or `|`, found `..` [INFO] [stderr] --> src/lib.rs:102:23 [INFO] [stderr] | [INFO] [stderr] 102 | ref rest..] if delim.delim == token::DelimToken::Bracket => { [INFO] [stderr] | ^^ expected one of `,`, `@`, `]`, or `|` here [INFO] [stderr] [INFO] [stderr] error: expected one of `,`, `@`, `]`, or `|`, found `..` [INFO] [stderr] --> src/lib.rs:102:23 [INFO] [stderr] | [INFO] [stderr] 102 | ref rest..] if delim.delim == token::DelimToken::Bracket => { [INFO] [stderr] | ^^ expected one of `,`, `@`, `]`, or `|` here [INFO] [stderr] [INFO] [stderr] error[E0557]: feature has been removed [INFO] [stderr] --> src/lib.rs:6:61 [INFO] [stderr] | [INFO] [stderr] 6 | #![feature(plugin_registrar, rustc_private, slice_patterns, advanced_slice_patterns)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: merged into `#![feature(slice_patterns)]` [INFO] [stderr] --> src/lib.rs:6:61 [INFO] [stderr] | [INFO] [stderr] 6 | #![feature(plugin_registrar, rustc_private, slice_patterns, advanced_slice_patterns)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0557]: feature has been removed [INFO] [stderr] --> src/lib.rs:6:61 [INFO] [stderr] | [INFO] [stderr] 6 | #![feature(plugin_registrar, rustc_private, slice_patterns, advanced_slice_patterns)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: merged into `#![feature(slice_patterns)]` [INFO] [stderr] --> src/lib.rs:6:61 [INFO] [stderr] | [INFO] [stderr] 6 | #![feature(plugin_registrar, rustc_private, slice_patterns, advanced_slice_patterns)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `quote` in `ext` [INFO] [stderr] --> src/lib.rs:16:18 [INFO] [stderr] | [INFO] [stderr] 16 | use syntax::ext::quote::rt::ToTokens; [INFO] [stderr] | ^^^^^ could not find `quote` in `ext` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::codemap` [INFO] [stderr] --> src/lib.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | use syntax::codemap::Span; [INFO] [stderr] | ^^^^^^^ could not find `codemap` in `syntax` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::tokenstream::Delimited` [INFO] [stderr] --> src/lib.rs:18:27 [INFO] [stderr] | [INFO] [stderr] 18 | use syntax::tokenstream::{Delimited, TokenTree}; [INFO] [stderr] | ^^^^^^^^^ no `Delimited` in `tokenstream` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::util::small_vector` [INFO] [stderr] --> src/lib.rs:19:19 [INFO] [stderr] | [INFO] [stderr] 19 | use syntax::util::small_vector::SmallVector; [INFO] [stderr] | ^^^^^^^^^^^^ could not find `small_vector` in `util` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `quote` in `ext` [INFO] [stderr] --> src/lib.rs:16:18 [INFO] [stderr] | [INFO] [stderr] 16 | use syntax::ext::quote::rt::ToTokens; [INFO] [stderr] | ^^^^^ could not find `quote` in `ext` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::codemap` [INFO] [stderr] --> src/lib.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | use syntax::codemap::Span; [INFO] [stderr] | ^^^^^^^ could not find `codemap` in `syntax` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::tokenstream::Delimited` [INFO] [stderr] --> src/lib.rs:18:27 [INFO] [stderr] | [INFO] [stderr] 18 | use syntax::tokenstream::{Delimited, TokenTree}; [INFO] [stderr] | ^^^^^^^^^ no `Delimited` in `tokenstream` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::util::small_vector` [INFO] [stderr] --> src/lib.rs:19:19 [INFO] [stderr] | [INFO] [stderr] 19 | use syntax::util::small_vector::SmallVector; [INFO] [stderr] | ^^^^^^^^^^^^ could not find `small_vector` in `util` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:88:17 [INFO] [stderr] | [INFO] [stderr] 88 | try!(build_string_from_idents(target, &delim.tts[..])); [INFO] [stderr] | ^^^ [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:88:17 [INFO] [stderr] | [INFO] [stderr] 88 | try!(build_string_from_idents(target, &delim.tts[..])); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:123:9 [INFO] [stderr] | [INFO] [stderr] 123 | try!(build_string_from_idents(&mut concatenated, &delim.tts)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:134:22 [INFO] [stderr] | [INFO] [stderr] 134 | if let Some(i) = try!(p.parse_item()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:166:19 [INFO] [stderr] | [INFO] [stderr] 166 | let pat = try!(parser.parse_pat()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | try!(parser.expect(&token::Colon)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:168:18 [INFO] [stderr] | [INFO] [stderr] 168 | let ty = try!(parser.parse_ty()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:184:18 [INFO] [stderr] | [INFO] [stderr] 184 | ret.push(try!(parser.parse_expr()).to_tokens(cx)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:230:22 [INFO] [stderr] | [INFO] [stderr] 230 | let mut groups = try!(pull_tts_from_paren_groups(¶ms.tts[..])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:231:23 [INFO] [stderr] | [INFO] [stderr] 231 | let param_types = try!(parse_pats_and_types(cx, span, groups.remove(0).1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:233:9 [INFO] [stderr] | [INFO] [stderr] 233 | try!(groups.into_iter().map(|(span, tts)| parse_exprs(cx, tts).map(|parsed| (span, parsed))).collect()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:251:15 [INFO] [stderr] | [INFO] [stderr] 251 | match try!(parser.parse_item()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:276:13 [INFO] [stderr] | [INFO] [stderr] 276 | try!(build_string_from_idents(&mut concatenated, &[name.clone()])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:37:71 [INFO] [stderr] | [INFO] [stderr] 37 | fn as_mac_result(self, cx: &mut ExtCtxt, whole_span: Span) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:112:85 [INFO] [stderr] | [INFO] [stderr] 112 | fn fnconcat_impl(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:140:68 [INFO] [stderr] | [INFO] [stderr] 140 | fn fnconcat(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:123:9 [INFO] [stderr] | [INFO] [stderr] 123 | try!(build_string_from_idents(&mut concatenated, &delim.tts)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:228:42 [INFO] [stderr] | [INFO] [stderr] 228 | -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:134:22 [INFO] [stderr] | [INFO] [stderr] 134 | if let Some(i) = try!(p.parse_item()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:166:19 [INFO] [stderr] | [INFO] [stderr] 166 | let pat = try!(parser.parse_pat()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | try!(parser.expect(&token::Colon)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:259:93 [INFO] [stderr] | [INFO] [stderr] 259 | fn parametrize_test_impl(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:168:18 [INFO] [stderr] | [INFO] [stderr] 168 | let ty = try!(parser.parse_ty()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:184:18 [INFO] [stderr] | [INFO] [stderr] 184 | ret.push(try!(parser.parse_expr()).to_tokens(cx)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:230:22 [INFO] [stderr] | [INFO] [stderr] 230 | let mut groups = try!(pull_tts_from_paren_groups(¶ms.tts[..])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:286:76 [INFO] [stderr] | [INFO] [stderr] 286 | fn parametrize_test(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:231:23 [INFO] [stderr] | [INFO] [stderr] 231 | let param_types = try!(parse_pats_and_types(cx, span, groups.remove(0).1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:233:9 [INFO] [stderr] | [INFO] [stderr] 233 | try!(groups.into_iter().map(|(span, tts)| parse_exprs(cx, tts).map(|parsed| (span, parsed))).collect()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated attribute `plugin_registrar`: compiler plugins are deprecated. See https://github.com/rust-lang/rust/issues/29597 [INFO] [stderr] --> src/lib.rs:293:1 [INFO] [stderr] | [INFO] [stderr] 293 | #[plugin_registrar] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:251:15 [INFO] [stderr] | [INFO] [stderr] 251 | match try!(parser.parse_item()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:276:13 [INFO] [stderr] | [INFO] [stderr] 276 | try!(build_string_from_idents(&mut concatenated, &[name.clone()])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:37:71 [INFO] [stderr] | [INFO] [stderr] 37 | fn as_mac_result(self, cx: &mut ExtCtxt, whole_span: Span) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:112:85 [INFO] [stderr] | [INFO] [stderr] 112 | fn fnconcat_impl(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:140:68 [INFO] [stderr] | [INFO] [stderr] 140 | fn fnconcat(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:228:42 [INFO] [stderr] | [INFO] [stderr] 228 | -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:259:93 [INFO] [stderr] | [INFO] [stderr] 259 | fn parametrize_test_impl(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:286:76 [INFO] [stderr] | [INFO] [stderr] 286 | fn parametrize_test(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated attribute `plugin_registrar`: compiler plugins are deprecated. See https://github.com/rust-lang/rust/issues/29597 [INFO] [stderr] --> src/lib.rs:293:1 [INFO] [stderr] | [INFO] [stderr] 293 | #[plugin_registrar] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `quote` in `ext` [INFO] [stderr] --> src/lib.rs:16:18 [INFO] [stderr] | [INFO] [stderr] 16 | use syntax::ext::quote::rt::ToTokens; [INFO] [stderr] | ^^^^^ could not find `quote` in `ext` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::codemap` [INFO] [stderr] --> src/lib.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | use syntax::codemap::Span; [INFO] [stderr] | ^^^^^^^ could not find `codemap` in `syntax` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::tokenstream::Delimited` [INFO] [stderr] --> src/lib.rs:18:27 [INFO] [stderr] | [INFO] [stderr] 18 | use syntax::tokenstream::{Delimited, TokenTree}; [INFO] [stderr] | ^^^^^^^^^ no `Delimited` in `tokenstream` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `syntax::util::small_vector` [INFO] [stderr] --> src/lib.rs:19:19 [INFO] [stderr] | [INFO] [stderr] 19 | use syntax::util::small_vector::SmallVector; [INFO] [stderr] | ^^^^^^^^^^^^ could not find `small_vector` in `util` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'rustc_plugin': import this through `rustc_driver::plugin` instead to make TLS work correctly. See https://github.com/rust-lang/rust/issues/62717 [INFO] [stderr] --> src/lib.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | extern crate rustc_plugin; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] warning: use of deprecated item 'rustc_plugin': import this through `rustc_driver::plugin` instead to make TLS work correctly. See https://github.com/rust-lang/rust/issues/62717 [INFO] [stderr] --> src/lib.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | extern crate rustc_plugin; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:88:17 [INFO] [stderr] | [INFO] [stderr] 88 | try!(build_string_from_idents(target, &delim.tts[..])); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:123:9 [INFO] [stderr] | [INFO] [stderr] 123 | try!(build_string_from_idents(&mut concatenated, &delim.tts)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:134:22 [INFO] [stderr] | [INFO] [stderr] 134 | if let Some(i) = try!(p.parse_item()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:166:19 [INFO] [stderr] | [INFO] [stderr] 166 | let pat = try!(parser.parse_pat()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | try!(parser.expect(&token::Colon)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:168:18 [INFO] [stderr] | [INFO] [stderr] 168 | let ty = try!(parser.parse_ty()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:184:18 [INFO] [stderr] | [INFO] [stderr] 184 | ret.push(try!(parser.parse_expr()).to_tokens(cx)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:230:22 [INFO] [stderr] | [INFO] [stderr] 230 | let mut groups = try!(pull_tts_from_paren_groups(¶ms.tts[..])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:231:23 [INFO] [stderr] | [INFO] [stderr] 231 | let param_types = try!(parse_pats_and_types(cx, span, groups.remove(0).1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:233:9 [INFO] [stderr] | [INFO] [stderr] 233 | try!(groups.into_iter().map(|(span, tts)| parse_exprs(cx, tts).map(|parsed| (span, parsed))).collect()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:251:15 [INFO] [stderr] | [INFO] [stderr] 251 | match try!(parser.parse_item()) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:276:13 [INFO] [stderr] | [INFO] [stderr] 276 | try!(build_string_from_idents(&mut concatenated, &[name.clone()])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:37:71 [INFO] [stderr] | [INFO] [stderr] 37 | fn as_mac_result(self, cx: &mut ExtCtxt, whole_span: Span) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:112:85 [INFO] [stderr] | [INFO] [stderr] 112 | fn fnconcat_impl(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:140:68 [INFO] [stderr] | [INFO] [stderr] 140 | fn fnconcat(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:228:42 [INFO] [stderr] | [INFO] [stderr] 228 | -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:259:93 [INFO] [stderr] | [INFO] [stderr] 259 | fn parametrize_test_impl(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> LocalResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:286:76 [INFO] [stderr] | [INFO] [stderr] 286 | fn parametrize_test(cx: &mut ExtCtxt, sp: Span, args: &[TokenTree]) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MacResult + 'static` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated attribute `plugin_registrar`: compiler plugins are deprecated. See https://github.com/rust-lang/rust/issues/29597 [INFO] [stderr] --> src/lib.rs:293:1 [INFO] [stderr] | [INFO] [stderr] 293 | #[plugin_registrar] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'rustc_plugin': import this through `rustc_driver::plugin` instead to make TLS work correctly. See https://github.com/rust-lang/rust/issues/62717 [INFO] [stderr] --> src/lib.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | extern crate rustc_plugin; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 2 parameters but 1 parameter was supplied [INFO] [stderr] --> src/lib.rs:74:28 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 2 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 2 parameters but 1 parameter was supplied [INFO] [stderr] --> src/lib.rs:74:44 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^ expected 2 parameters [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:80:14 [INFO] [stderr] | [INFO] [stderr] 80 | &TokenTree::Token(_, token::Ident(ref i)) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 2 fields [INFO] [stderr] --> src/lib.rs:80:34 [INFO] [stderr] | [INFO] [stderr] 80 | &TokenTree::Token(_, token::Ident(ref i)) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ expected 2 fields, found 1 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:83:14 [INFO] [stderr] | [INFO] [stderr] 83 | &TokenTree::Token(_, token::Comma) => (), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:84:14 [INFO] [stderr] | [INFO] [stderr] 84 | &TokenTree::Delimited(delim_span, ref delim) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 2 parameters but 1 parameter was supplied [INFO] [stderr] --> src/lib.rs:74:28 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 2 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 2 parameters but 1 parameter was supplied [INFO] [stderr] --> src/lib.rs:74:44 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^ expected 2 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 2 parameters but 1 parameter was supplied [INFO] [stderr] --> src/lib.rs:74:28 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 2 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 2 parameters but 1 parameter was supplied [INFO] [stderr] --> src/lib.rs:74:44 [INFO] [stderr] | [INFO] [stderr] 74 | TokenTree::Token(span, token::Ident(cx.ident_of(ident))) [INFO] [stderr] | ^^^^^^^^ expected 2 parameters [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:80:14 [INFO] [stderr] | [INFO] [stderr] 80 | &TokenTree::Token(_, token::Ident(ref i)) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 2 fields [INFO] [stderr] --> src/lib.rs:80:34 [INFO] [stderr] | [INFO] [stderr] 80 | &TokenTree::Token(_, token::Ident(ref i)) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ expected 2 fields, found 1 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:83:14 [INFO] [stderr] | [INFO] [stderr] 83 | &TokenTree::Token(_, token::Comma) => (), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:84:14 [INFO] [stderr] | [INFO] [stderr] 84 | &TokenTree::Delimited(delim_span, ref delim) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:80:14 [INFO] [stderr] | [INFO] [stderr] 80 | &TokenTree::Token(_, token::Ident(ref i)) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 2 fields [INFO] [stderr] --> src/lib.rs:80:34 [INFO] [stderr] | [INFO] [stderr] 80 | &TokenTree::Token(_, token::Ident(ref i)) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ expected 2 fields, found 1 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:83:14 [INFO] [stderr] | [INFO] [stderr] 83 | &TokenTree::Token(_, token::Comma) => (), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:84:14 [INFO] [stderr] | [INFO] [stderr] 84 | &TokenTree::Delimited(delim_span, ref delim) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:90:33 [INFO] [stderr] | [INFO] [stderr] 90 | ref tt => fail!((tt.get_span(), "non-ident, non-comma token")), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:100:15 [INFO] [stderr] | [INFO] [stderr] 100 | &[TokenTree::Token(_, token::Pound), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:101:15 [INFO] [stderr] | [INFO] [stderr] 101 | TokenTree::Delimited(_, ref delim), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:90:33 [INFO] [stderr] | [INFO] [stderr] 90 | ref tt => fail!((tt.get_span(), "non-ident, non-comma token")), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:100:15 [INFO] [stderr] | [INFO] [stderr] 100 | &[TokenTree::Token(_, token::Pound), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:101:15 [INFO] [stderr] | [INFO] [stderr] 101 | TokenTree::Delimited(_, ref delim), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:90:33 [INFO] [stderr] | [INFO] [stderr] 90 | ref tt => fail!((tt.get_span(), "non-ident, non-comma token")), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:100:15 [INFO] [stderr] | [INFO] [stderr] 100 | &[TokenTree::Token(_, token::Pound), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:101:15 [INFO] [stderr] | [INFO] [stderr] 101 | TokenTree::Delimited(_, ref delim), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | tokens = rest; [INFO] [stderr] | ^^^^ expected slice, found enum `syntax::tokenstream::TokenTree` [INFO] [stderr] | [INFO] [stderr] = note: expected type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] found type `&syntax::tokenstream::TokenTree` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:118:42 [INFO] [stderr] | [INFO] [stderr] 118 | fn_tokens[ident_token_pos] = if let &TokenTree::Delimited(delim_span, ref delim) = &fn_tokens[ident_token_pos] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:129:43 [INFO] [stderr] | [INFO] [stderr] 129 | fail!((fn_tokens[ident_token_pos].get_span(), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | tokens = rest; [INFO] [stderr] | ^^^^ expected slice, found enum `syntax::tokenstream::TokenTree` [INFO] [stderr] | [INFO] [stderr] = note: expected type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] found type `&syntax::tokenstream::TokenTree` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:118:42 [INFO] [stderr] | [INFO] [stderr] 118 | fn_tokens[ident_token_pos] = if let &TokenTree::Delimited(delim_span, ref delim) = &fn_tokens[ident_token_pos] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:129:43 [INFO] [stderr] | [INFO] [stderr] 129 | fail!((fn_tokens[ident_token_pos].get_span(), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:133:40 [INFO] [stderr] | [INFO] [stderr] 133 | let mut p = cx.new_parser_from_tts(&fn_tokens[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:152:14 [INFO] [stderr] | [INFO] [stderr] 152 | &TokenTree::Delimited(delim_span, ref delim) if delim.delim == token::DelimToken::Paren => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:155:14 [INFO] [stderr] | [INFO] [stderr] 155 | &TokenTree::Token(_, token::Comma) => (), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:156:33 [INFO] [stderr] | [INFO] [stderr] 156 | ref tt => fail!((tt.get_span(), "parenthesized group expected")), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:103:26 [INFO] [stderr] | [INFO] [stderr] 103 | tokens = rest; [INFO] [stderr] | ^^^^ expected slice, found enum `syntax::tokenstream::TokenTree` [INFO] [stderr] | [INFO] [stderr] = note: expected type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] found type `&syntax::tokenstream::TokenTree` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:118:42 [INFO] [stderr] | [INFO] [stderr] 118 | fn_tokens[ident_token_pos] = if let &TokenTree::Delimited(delim_span, ref delim) = &fn_tokens[ident_token_pos] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:129:43 [INFO] [stderr] | [INFO] [stderr] 129 | fail!((fn_tokens[ident_token_pos].get_span(), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:133:40 [INFO] [stderr] | [INFO] [stderr] 133 | let mut p = cx.new_parser_from_tts(&fn_tokens[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:152:14 [INFO] [stderr] | [INFO] [stderr] 152 | &TokenTree::Delimited(delim_span, ref delim) if delim.delim == token::DelimToken::Paren => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:155:14 [INFO] [stderr] | [INFO] [stderr] 155 | &TokenTree::Token(_, token::Comma) => (), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:156:33 [INFO] [stderr] | [INFO] [stderr] 156 | ref tt => fail!((tt.get_span(), "parenthesized group expected")), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:164:45 [INFO] [stderr] | [INFO] [stderr] 164 | let mut parser = cx.new_parser_from_tts(&tts[..]); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 0 parameters were supplied [INFO] [stderr] --> src/lib.rs:166:31 [INFO] [stderr] | [INFO] [stderr] 166 | let pat = try!(parser.parse_pat()); [INFO] [stderr] | ^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:169:27 [INFO] [stderr] | [INFO] [stderr] 169 | let mut pat = pat.to_tokens(cx); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:170:18 [INFO] [stderr] | [INFO] [stderr] 170 | pat.push(TokenTree::Token(span, token::Colon)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:171:23 [INFO] [stderr] | [INFO] [stderr] 171 | pat.extend(ty.to_tokens(cx).into_iter()); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:133:40 [INFO] [stderr] | [INFO] [stderr] 133 | let mut p = cx.new_parser_from_tts(&fn_tokens[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:152:14 [INFO] [stderr] | [INFO] [stderr] 152 | &TokenTree::Delimited(delim_span, ref delim) if delim.delim == token::DelimToken::Paren => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:155:14 [INFO] [stderr] | [INFO] [stderr] 155 | &TokenTree::Token(_, token::Comma) => (), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:156:33 [INFO] [stderr] | [INFO] [stderr] 156 | ref tt => fail!((tt.get_span(), "parenthesized group expected")), [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:164:45 [INFO] [stderr] | [INFO] [stderr] 164 | let mut parser = cx.new_parser_from_tts(&tts[..]); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 0 parameters were supplied [INFO] [stderr] --> src/lib.rs:166:31 [INFO] [stderr] | [INFO] [stderr] 166 | let pat = try!(parser.parse_pat()); [INFO] [stderr] | ^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:169:27 [INFO] [stderr] | [INFO] [stderr] 169 | let mut pat = pat.to_tokens(cx); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:170:18 [INFO] [stderr] | [INFO] [stderr] 170 | pat.push(TokenTree::Token(span, token::Colon)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:171:23 [INFO] [stderr] | [INFO] [stderr] 171 | pat.extend(ty.to_tokens(cx).into_iter()); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:182:45 [INFO] [stderr] | [INFO] [stderr] 182 | let mut parser = cx.new_parser_from_tts(&tts[..]); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:184:44 [INFO] [stderr] | [INFO] [stderr] 184 | ret.push(try!(parser.parse_expr()).to_tokens(cx)); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:195:14 [INFO] [stderr] | [INFO] [stderr] 195 | ret.push(TokenTree::Token(span, token::Eq)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:197:14 [INFO] [stderr] | [INFO] [stderr] 197 | ret.push(TokenTree::Token(span, token::Semi)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | TokenTree::Token(span, token::Pound), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:204:9 [INFO] [stderr] | [INFO] [stderr] 204 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 205 | | delim: token::Bracket, [INFO] [stderr] 206 | | open_span: span, [INFO] [stderr] 207 | | tts: vec![ident_of_ctx_and_span(cx, span, "test")], [INFO] [stderr] 208 | | close_span: span, [INFO] [stderr] 209 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:212:9 [INFO] [stderr] | [INFO] [stderr] 212 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 213 | | delim: token::Paren, [INFO] [stderr] 214 | | open_span: span, [INFO] [stderr] 215 | | tts: Vec::new(), [INFO] [stderr] 216 | | close_span: span, [INFO] [stderr] 217 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 219 | | delim: token::Brace, [INFO] [stderr] 220 | | open_span: span, [INFO] [stderr] 221 | | tts: block, [INFO] [stderr] 222 | | close_span: span, [INFO] [stderr] 223 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `codemap` found for type `&mut syntax::ext::base::ExtCtxt<'_>` in the current scope [INFO] [stderr] --> src/lib.rs:234:22 [INFO] [stderr] | [INFO] [stderr] 234 | let codemap = cx.codemap(); [INFO] [stderr] | ^^^^^^^ method not found in `&mut syntax::ext::base::ExtCtxt<'_>` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:164:45 [INFO] [stderr] | [INFO] [stderr] 164 | let mut parser = cx.new_parser_from_tts(&tts[..]); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 0 parameters were supplied [INFO] [stderr] --> src/lib.rs:166:31 [INFO] [stderr] | [INFO] [stderr] 166 | let pat = try!(parser.parse_pat()); [INFO] [stderr] | ^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:169:27 [INFO] [stderr] | [INFO] [stderr] 169 | let mut pat = pat.to_tokens(cx); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:170:18 [INFO] [stderr] | [INFO] [stderr] 170 | pat.push(TokenTree::Token(span, token::Colon)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:171:23 [INFO] [stderr] | [INFO] [stderr] 171 | pat.extend(ty.to_tokens(cx).into_iter()); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:182:45 [INFO] [stderr] | [INFO] [stderr] 182 | let mut parser = cx.new_parser_from_tts(&tts[..]); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:184:44 [INFO] [stderr] | [INFO] [stderr] 184 | ret.push(try!(parser.parse_expr()).to_tokens(cx)); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:195:14 [INFO] [stderr] | [INFO] [stderr] 195 | ret.push(TokenTree::Token(span, token::Eq)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:197:14 [INFO] [stderr] | [INFO] [stderr] 197 | ret.push(TokenTree::Token(span, token::Semi)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | TokenTree::Token(span, token::Pound), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:204:9 [INFO] [stderr] | [INFO] [stderr] 204 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 205 | | delim: token::Bracket, [INFO] [stderr] 206 | | open_span: span, [INFO] [stderr] 207 | | tts: vec![ident_of_ctx_and_span(cx, span, "test")], [INFO] [stderr] 208 | | close_span: span, [INFO] [stderr] 209 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:212:9 [INFO] [stderr] | [INFO] [stderr] 212 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 213 | | delim: token::Paren, [INFO] [stderr] 214 | | open_span: span, [INFO] [stderr] 215 | | tts: Vec::new(), [INFO] [stderr] 216 | | close_span: span, [INFO] [stderr] 217 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 219 | | delim: token::Brace, [INFO] [stderr] 220 | | open_span: span, [INFO] [stderr] 221 | | tts: block, [INFO] [stderr] 222 | | close_span: span, [INFO] [stderr] 223 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `codemap` found for type `&mut syntax::ext::base::ExtCtxt<'_>` in the current scope [INFO] [stderr] --> src/lib.rs:234:22 [INFO] [stderr] | [INFO] [stderr] 234 | let codemap = cx.codemap(); [INFO] [stderr] | ^^^^^^^ method not found in `&mut syntax::ext::base::ExtCtxt<'_>` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let mut parser = cx.new_parser_from_tts(&tokens[..]); [INFO] [stderr] | ^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:262:11 [INFO] [stderr] | [INFO] [stderr] 262 | TokenTree::Token(_, token::Comma), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:263:11 [INFO] [stderr] | [INFO] [stderr] 263 | TokenTree::Delimited(params_span, ref params), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:264:11 [INFO] [stderr] | [INFO] [stderr] 264 | TokenTree::Token(_, token::Comma), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:265:11 [INFO] [stderr] | [INFO] [stderr] 265 | TokenTree::Delimited(block_span, ref block)] => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:278:29 [INFO] [stderr] | [INFO] [stderr] 278 | fail!((name.get_span(), "empty identifier")); [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:182:45 [INFO] [stderr] | [INFO] [stderr] 182 | let mut parser = cx.new_parser_from_tts(&tts[..]); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `to_tokens` found for type `syntax::ptr::P` in the current scope [INFO] [stderr] --> src/lib.rs:184:44 [INFO] [stderr] | [INFO] [stderr] 184 | ret.push(try!(parser.parse_expr()).to_tokens(cx)); [INFO] [stderr] | ^^^^^^^^^ method not found in `syntax::ptr::P` [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:195:14 [INFO] [stderr] | [INFO] [stderr] 195 | ret.push(TokenTree::Token(span, token::Eq)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:197:14 [INFO] [stderr] | [INFO] [stderr] 197 | ret.push(TokenTree::Token(span, token::Semi)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 1 parameter but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | TokenTree::Token(span, token::Pound), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:204:9 [INFO] [stderr] | [INFO] [stderr] 204 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 205 | | delim: token::Bracket, [INFO] [stderr] 206 | | open_span: span, [INFO] [stderr] 207 | | tts: vec![ident_of_ctx_and_span(cx, span, "test")], [INFO] [stderr] 208 | | close_span: span, [INFO] [stderr] 209 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:212:9 [INFO] [stderr] | [INFO] [stderr] 212 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 213 | | delim: token::Paren, [INFO] [stderr] 214 | | open_span: span, [INFO] [stderr] 215 | | tts: Vec::new(), [INFO] [stderr] 216 | | close_span: span, [INFO] [stderr] 217 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0061]: this function takes 3 parameters but 2 parameters were supplied [INFO] [stderr] --> src/lib.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | / TokenTree::Delimited(span, Rc::new(Delimited { [INFO] [stderr] 219 | | delim: token::Brace, [INFO] [stderr] 220 | | open_span: span, [INFO] [stderr] 221 | | tts: block, [INFO] [stderr] 222 | | close_span: span, [INFO] [stderr] 223 | | })), [INFO] [stderr] | |___________^ expected 3 parameters [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `codemap` found for type `&mut syntax::ext::base::ExtCtxt<'_>` in the current scope [INFO] [stderr] --> src/lib.rs:234:22 [INFO] [stderr] | [INFO] [stderr] 234 | let codemap = cx.codemap(); [INFO] [stderr] | ^^^^^^^ method not found in `&mut syntax::ext::base::ExtCtxt<'_>` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let mut parser = cx.new_parser_from_tts(&tokens[..]); [INFO] [stderr] | ^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:262:11 [INFO] [stderr] | [INFO] [stderr] 262 | TokenTree::Token(_, token::Comma), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:263:11 [INFO] [stderr] | [INFO] [stderr] 263 | TokenTree::Delimited(params_span, ref params), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:264:11 [INFO] [stderr] | [INFO] [stderr] 264 | TokenTree::Token(_, token::Comma), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:265:11 [INFO] [stderr] | [INFO] [stderr] 265 | TokenTree::Delimited(block_span, ref block)] => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:278:29 [INFO] [stderr] | [INFO] [stderr] 278 | fail!((name.get_span(), "empty identifier")); [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:295:36 [INFO] [stderr] | [INFO] [stderr] 295 | reg.register_macro("fnconcat", fnconcat); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `for<'cx, 'r> fn(&'cx mut syntax::ext::base::ExtCtxt<'r>, syntax::source_map::Span, syntax::tokenstream::TokenStream) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'cx)>` [INFO] [stderr] found type `for<'r, 's, 't0> fn(&'r mut syntax::ext::base::ExtCtxt<'s>, [type error], &'t0 [syntax::tokenstream::TokenTree]) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'static)> {fnconcat}` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:295:36 [INFO] [stderr] | [INFO] [stderr] 295 | reg.register_macro("fnconcat", fnconcat); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `for<'cx, 'r> fn(&'cx mut syntax::ext::base::ExtCtxt<'r>, syntax::source_map::Span, syntax::tokenstream::TokenStream) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'cx)>` [INFO] [stderr] found type `for<'r, 's, 't0> fn(&'r mut syntax::ext::base::ExtCtxt<'s>, [type error], &'t0 [syntax::tokenstream::TokenTree]) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'static)> {fnconcat}` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:296:44 [INFO] [stderr] | [INFO] [stderr] 296 | reg.register_macro("parametrize_test", parametrize_test); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `for<'cx, 'r> fn(&'cx mut syntax::ext::base::ExtCtxt<'r>, syntax::source_map::Span, syntax::tokenstream::TokenStream) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'cx)>` [INFO] [stderr] found type `for<'r, 's, 't0> fn(&'r mut syntax::ext::base::ExtCtxt<'s>, [type error], &'t0 [syntax::tokenstream::TokenTree]) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'static)> {parametrize_test}` [INFO] [stderr] [INFO] [stderr] error: aborting due to 45 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0023, E0061, E0308, E0432, E0433, E0557, E0599. [INFO] [stderr] For more information about an error, try `rustc --explain E0023`. [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let mut parser = cx.new_parser_from_tts(&tokens[..]); [INFO] [stderr] | ^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `syntax::tokenstream::TokenStream` [INFO] [stderr] found type `&[syntax::tokenstream::TokenTree]` [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:262:11 [INFO] [stderr] | [INFO] [stderr] 262 | TokenTree::Token(_, token::Comma), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:263:11 [INFO] [stderr] | [INFO] [stderr] 263 | TokenTree::Delimited(params_span, ref params), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 1 field [INFO] [stderr] --> src/lib.rs:264:11 [INFO] [stderr] | [INFO] [stderr] 264 | TokenTree::Token(_, token::Comma), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 field, found 2 [INFO] [stderr] [INFO] [stderr] error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields [INFO] [stderr] --> src/lib.rs:265:11 [INFO] [stderr] | [INFO] [stderr] 265 | TokenTree::Delimited(block_span, ref block)] => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 3 fields, found 2 [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `get_span` found for type `&syntax::tokenstream::TokenTree` in the current scope [INFO] [stderr] --> src/lib.rs:278:29 [INFO] [stderr] | [INFO] [stderr] 278 | fail!((name.get_span(), "empty identifier")); [INFO] [stderr] | ^^^^^^^^ help: there is a method with a similar name: `set_span` [INFO] [stderr] [INFO] [stderr] error: could not compile `fnconcat`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:296:44 [INFO] [stderr] | [INFO] [stderr] 296 | reg.register_macro("parametrize_test", parametrize_test); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `for<'cx, 'r> fn(&'cx mut syntax::ext::base::ExtCtxt<'r>, syntax::source_map::Span, syntax::tokenstream::TokenStream) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'cx)>` [INFO] [stderr] found type `for<'r, 's, 't0> fn(&'r mut syntax::ext::base::ExtCtxt<'s>, [type error], &'t0 [syntax::tokenstream::TokenTree]) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'static)> {parametrize_test}` [INFO] [stderr] [INFO] [stderr] error: aborting due to 45 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0023, E0061, E0308, E0432, E0433, E0557, E0599. [INFO] [stderr] For more information about an error, try `rustc --explain E0023`. [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:295:36 [INFO] [stderr] | [INFO] [stderr] 295 | reg.register_macro("fnconcat", fnconcat); [INFO] [stderr] | ^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `for<'cx, 'r> fn(&'cx mut syntax::ext::base::ExtCtxt<'r>, syntax::source_map::Span, syntax::tokenstream::TokenStream) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'cx)>` [INFO] [stderr] found type `for<'r, 's, 't0> fn(&'r mut syntax::ext::base::ExtCtxt<'s>, [type error], &'t0 [syntax::tokenstream::TokenTree]) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'static)> {fnconcat}` [INFO] [stderr] [INFO] [stderr] error: could not compile `fnconcat`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/lib.rs:296:44 [INFO] [stderr] | [INFO] [stderr] 296 | reg.register_macro("parametrize_test", parametrize_test); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ expected struct `syntax::tokenstream::TokenStream`, found reference [INFO] [stderr] | [INFO] [stderr] = note: expected type `for<'cx, 'r> fn(&'cx mut syntax::ext::base::ExtCtxt<'r>, syntax::source_map::Span, syntax::tokenstream::TokenStream) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'cx)>` [INFO] [stderr] found type `for<'r, 's, 't0> fn(&'r mut syntax::ext::base::ExtCtxt<'s>, [type error], &'t0 [syntax::tokenstream::TokenTree]) -> std::boxed::Box<(dyn syntax::ext::base::MacResult + 'static)> {parametrize_test}` [INFO] [stderr] [INFO] [stderr] error: aborting due to 45 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0023, E0061, E0308, E0432, E0433, E0557, E0599. [INFO] [stderr] For more information about an error, try `rustc --explain E0023`. [INFO] [stderr] error: could not compile `fnconcat`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "b3428c28f81a1b5283cd53d06f8e3800a90112aad5b6f3889a413815c0dec8fb"` [INFO] running `"docker" "rm" "-f" "b3428c28f81a1b5283cd53d06f8e3800a90112aad5b6f3889a413815c0dec8fb"` [INFO] [stdout] b3428c28f81a1b5283cd53d06f8e3800a90112aad5b6f3889a413815c0dec8fb