[INFO] cloning repository https://github.com/maekawatoshiki/rcaml
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/maekawatoshiki/rcaml" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaekawatoshiki%2Frcaml", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaekawatoshiki%2Frcaml'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c9824653d7acd5de76731428b52d63e41f51c3e9
[INFO] checking maekawatoshiki/rcaml against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaekawatoshiki%2Frcaml" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/maekawatoshiki/rcaml
[INFO] finished tweaking git repo https://github.com/maekawatoshiki/rcaml
[INFO] tweaked toml for git repo https://github.com/maekawatoshiki/rcaml written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/maekawatoshiki/rcaml on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/maekawatoshiki/rcaml already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2172399a1ff6c9c7c6d41234d57294470f93d285112412b53487bdc7298312ab
[INFO] running `Command { std: "docker" "start" "-a" "2172399a1ff6c9c7c6d41234d57294470f93d285112412b53487bdc7298312ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2172399a1ff6c9c7c6d41234d57294470f93d285112412b53487bdc7298312ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2172399a1ff6c9c7c6d41234d57294470f93d285112412b53487bdc7298312ab", kill_on_drop: false }`
[INFO] [stdout] 2172399a1ff6c9c7c6d41234d57294470f93d285112412b53487bdc7298312ab
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 900017fa4ba965687f0415febde3e91492887809eeafd9026267896c6474b4a9
[INFO] running `Command { std: "docker" "start" "-a" "900017fa4ba965687f0415febde3e91492887809eeafd9026267896c6474b4a9", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling winapi-build v0.1.1
[INFO] [stderr]    Compiling libc v0.2.33
[INFO] [stderr]    Compiling winapi v0.2.8
[INFO] [stderr]    Compiling regex-syntax v0.3.9
[INFO] [stderr]    Compiling utf8-ranges v0.1.3
[INFO] [stderr]    Compiling lazy_static v0.2.9
[INFO] [stderr]    Compiling gcc v0.3.54
[INFO] [stderr]     Checking unicode-width v0.1.4
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking ansi_term v0.9.0
[INFO] [stderr]     Checking unreachable v0.1.1
[INFO] [stderr]     Checking bitflags v0.9.1
[INFO] [stderr]    Compiling kernel32-sys v0.2.2
[INFO] [stderr]     Checking num-traits v0.1.40
[INFO] [stderr]     Checking strsim v0.6.0
[INFO] [stderr]     Checking vec_map v0.8.0
[INFO] [stderr]     Checking bitflags v0.7.0
[INFO] [stderr]     Checking term_size v0.3.0
[INFO] [stderr]     Checking memchr v1.0.2
[INFO] [stderr]     Checking atty v0.2.3
[INFO] [stderr]     Checking rand v0.3.18
[INFO] [stderr]     Checking textwrap v0.8.0
[INFO] [stderr]     Checking nom v3.2.1
[INFO] [stderr]    Compiling memchr v0.1.11
[INFO] [stderr]    Compiling thread-id v2.0.0
[INFO] [stderr]     Checking ordered-float v0.5.0
[INFO] [stderr]    Compiling thread_local v0.2.7
[INFO] [stderr]    Compiling aho-corasick v0.5.3
[INFO] [stderr]     Checking clap v2.26.2
[INFO] [stderr]    Compiling regex v0.1.80
[INFO] [stderr]    Compiling semver-parser v0.6.2
[INFO] [stderr]    Compiling semver v0.4.1
[INFO] [stderr]    Compiling llvm-sys v39.0.6
[INFO] [stderr]     Checking rcaml v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused attribute `macro_export`
[INFO] [stdout]    --> src/parser.rs:397:1
[INFO] [stdout]     |
[INFO] [stdout] 397 | #[macro_export]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the built-in attribute `macro_export` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]    --> src/parser.rs:398:1
[INFO] [stdout]     |
[INFO] [stdout] 398 | named!(pub module_item<NodeKind>,
[INFO] [stdout]     | ^^^^^
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/parser.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 |                 (params
[INFO] [stdout]    |                 ^
[INFO] [stdout] ...
[INFO] [stdout] 72 |                     .collect())
[INFO] [stdout]    |                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 69 ~                 params
[INFO] [stdout] 70 |                     .into_iter()
[INFO] [stdout] 71 |                     .map(|param| (param.get_ident_name().unwrap(), Type::Var(0)))
[INFO] [stdout] 72 ~                     .collect()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/typing.rs:45:129
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 macro_rules! name { ($id:expr) => ( format!("\'{}", m.entry($id).or_insert_with(|| { *i += 1; *i }).clone()) ) };
[INFO] [stdout]    |                                                                                                                                 ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:233:17
[INFO] [stdout]     |
[INFO] [stdout] 233 |                 try!(unify(a, b, tyenv));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:243:17
[INFO] [stdout]     |
[INFO] [stdout] 243 |                 try!(unify(a, b, tyenv));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:376:47
[INFO] [stdout]     |
[INFO] [stdout] 376 |             for e in $es.iter() { argtys.push(try!(g(e, env, tyenv, idgen))); }
[INFO] [stdout]     |                                               ^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |         NodeKind::Tuple(ref es) => Ok(Type::Tuple(g_seq!(es))),
[INFO] [stdout]     |                                                   ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `g_seq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 |             try!(unify(&try!(g(lhs, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:399:13
[INFO] [stdout]     |
[INFO] [stdout] 399 |             try!(unify(&try!(g(rhs, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:398:25
[INFO] [stdout]     |
[INFO] [stdout] 398 |             try!(unify(&try!(g(lhs, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:399:25
[INFO] [stdout]     |
[INFO] [stdout] 399 |             try!(unify(&try!(g(rhs, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |             try!(unify(&try!(g(lhs, env, tyenv, idgen)), &Type::Float, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:404:13
[INFO] [stdout]     |
[INFO] [stdout] 404 |             try!(unify(&try!(g(rhs, env, tyenv, idgen)), &Type::Float, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:403:25
[INFO] [stdout]     |
[INFO] [stdout] 403 |             try!(unify(&try!(g(lhs, env, tyenv, idgen)), &Type::Float, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:404:25
[INFO] [stdout]     |
[INFO] [stdout] 404 |             try!(unify(&try!(g(rhs, env, tyenv, idgen)), &Type::Float, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |             try!(unify(&a, &b, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:408:21
[INFO] [stdout]     |
[INFO] [stdout] 408 |             let a = try!(g(lhs, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:409:21
[INFO] [stdout]     |
[INFO] [stdout] 409 |             let b = try!(g(rhs, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:420:13
[INFO] [stdout]     |
[INFO] [stdout] 420 |             try!(unify(&callee_ty, &functy, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:416:29
[INFO] [stdout]     |
[INFO] [stdout] 416 |             let callee_ty = try!(g(callee, env, tyenv, idgen));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:376:47
[INFO] [stdout]     |
[INFO] [stdout] 376 |             for e in $es.iter() { argtys.push(try!(g(e, env, tyenv, idgen))); }
[INFO] [stdout]     |                                               ^^^
[INFO] [stdout] ...
[INFO] [stdout] 417 |             let functy = Type::Func(g_seq!(args), Box::new(ty.clone()));
[INFO] [stdout]     |                                     ------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `g_seq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:425:13
[INFO] [stdout]     |
[INFO] [stdout] 425 |             try!(unify(&t, ty, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:424:21
[INFO] [stdout]     |
[INFO] [stdout] 424 |             let t = try!(g(expr, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:444:13
[INFO] [stdout]     |
[INFO] [stdout] 444 |             try!(unify(&ty, &newty, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:442:26
[INFO] [stdout]     |
[INFO] [stdout] 442 |                 Box::new(try!(g(expr, &newenv_body, tyenv, idgen))),
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:450:13
[INFO] [stdout]     |
[INFO] [stdout] 450 |             try!(unify(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:451:18
[INFO] [stdout]     |
[INFO] [stdout] 451 |                 &try!(g(expr, &env, tyenv, idgen)),
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:462:13
[INFO] [stdout]     |
[INFO] [stdout] 462 |             try!(unify(&try!(g(expr, env, tyenv, idgen)), ty, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:462:25
[INFO] [stdout]     |
[INFO] [stdout] 462 |             try!(unify(&try!(g(expr, env, tyenv, idgen)), ty, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:483:13
[INFO] [stdout]     |
[INFO] [stdout] 483 |             try!(unify(&ty, &newty, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:479:30
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     Box::new(try!(g(expr, &newenv_body, tyenv, idgen))),
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:491:13
[INFO] [stdout]     |
[INFO] [stdout] 491 |             try!(unify(&try!(g(cond, env, tyenv, idgen)), &Type::Bool, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:494:13
[INFO] [stdout]     |
[INFO] [stdout] 494 |             try!(unify(&t, &e, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:491:25
[INFO] [stdout]     |
[INFO] [stdout] 491 |             try!(unify(&try!(g(cond, env, tyenv, idgen)), &Type::Bool, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:492:21
[INFO] [stdout]     |
[INFO] [stdout] 492 |             let t = try!(g(then_, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:493:21
[INFO] [stdout]     |
[INFO] [stdout] 493 |             let e = try!(g(else_, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:498:13
[INFO] [stdout]     |
[INFO] [stdout] 498 |             try!(unify(&try!(g(e1, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:498:25
[INFO] [stdout]     |
[INFO] [stdout] 498 |             try!(unify(&try!(g(e1, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:499:21
[INFO] [stdout]     |
[INFO] [stdout] 499 |             let t = try!(g(e2, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:504:13
[INFO] [stdout]     |
[INFO] [stdout] 504 |             try!(unify(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |             try!(unify(&try!(g(e2, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:505:18
[INFO] [stdout]     |
[INFO] [stdout] 505 |                 &try!(g(e1, env, tyenv, idgen)),
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:509:25
[INFO] [stdout]     |
[INFO] [stdout] 509 |             try!(unify(&try!(g(e2, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:514:13
[INFO] [stdout]     |
[INFO] [stdout] 514 |             try!(unify(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:519:13
[INFO] [stdout]     |
[INFO] [stdout] 519 |             try!(unify(&try!(g(e2, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:513:21
[INFO] [stdout]     |
[INFO] [stdout] 513 |             let t = try!(g(e3, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:515:18
[INFO] [stdout]     |
[INFO] [stdout] 515 |                 &try!(g(e1, env, tyenv, idgen)),
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:519:25
[INFO] [stdout]     |
[INFO] [stdout] 519 |             try!(unify(&try!(g(e2, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |             try!(self.gen_expr(&env, Some(main), &expr));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |                 try!(self.gen_fun(&mut env, &fun));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:262:36
[INFO] [stdout]     |
[INFO] [stdout] 262 |         LLVMBuildRet(self.builder, try!(self.gen_int(0)));
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:354:23
[INFO] [stdout]     |
[INFO] [stdout] 354 |             let var = try!(self.declare_local_var(
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:365:23
[INFO] [stdout]     |
[INFO] [stdout] 365 |         let ret_val = try!(self.gen_expr(&env, Some(llvm_fun), &*cls.body));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:466:29
[INFO] [stdout]     |
[INFO] [stdout] 466 |         let llvm_expr_val = try!(self.gen_expr(env, cur_fun, expr));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |             try!(self.declare_local_var(&mut newenv, cur_fun, name, LLVMTypeOf(llvm_expr_val),));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 |         let llvm_expr_val = try!(self.gen_expr(env, cur_fun, expr));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:484:33
[INFO] [stdout]     |
[INFO] [stdout] 484 |             let llvm_elem_val = try!(self.llvm_struct_elem_extract(llvm_expr_val, i as u32));
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:486:17
[INFO] [stdout]     |
[INFO] [stdout] 486 |                 try!(
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:547:17
[INFO] [stdout]     |
[INFO] [stdout] 547 |         let x = try!(
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:606:13
[INFO] [stdout]     |
[INFO] [stdout] 606 |             try!(self.llvm_struct_alloc(actual_fv))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:608:22
[INFO] [stdout]     |
[INFO] [stdout] 608 |         let newcls = try!(self.llvm_struct_alloc(vec![fun, actual_fv]));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:623:19
[INFO] [stdout]     |
[INFO] [stdout] 623 |         let fun = try!(self.lookup_var(env, &cls.entry)).retrieve();
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:627:24
[INFO] [stdout]     |
[INFO] [stdout] 627 |                 v.push(try!(self.lookup_var(env, name)).get(self.builder))
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:631:28
[INFO] [stdout]     |
[INFO] [stdout] 631 |         let (new_env, _) = try!(self.make_cls(env, name.clone(), fun, fv));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:632:17
[INFO] [stdout]     |
[INFO] [stdout] 632 |         let x = try!(self.gen_expr(&new_env, cur_fun, body));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:649:17
[INFO] [stdout]     |
[INFO] [stdout] 649 |         let x = try!(self.lookup_var(env, name)).get(self.builder);
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:650:19
[INFO] [stdout]     |
[INFO] [stdout] 650 |         let fun = try!(self.llvm_struct_elem_load(x, 0));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:651:18
[INFO] [stdout]     |
[INFO] [stdout] 651 |         let fv = try!(self.llvm_struct_elem_load(x, 1));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:655:28
[INFO] [stdout]     |
[INFO] [stdout] 655 |             let llvm_arg = try!(self.gen_expr(env, cur_fun, &arg));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:694:27
[INFO] [stdout]     |
[INFO] [stdout] 694 |             args_val.push(try!(self.gen_expr(env, cur_fun, &arg)))
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:708:19
[INFO] [stdout]     |
[INFO] [stdout] 708 |         let fun = try!(self.lookup_var(env, name)).retrieve();
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:729:23
[INFO] [stdout]     |
[INFO] [stdout] 729 |         let lhs_val = try!(self.gen_expr(env, cur_fun, lhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:730:23
[INFO] [stdout]     |
[INFO] [stdout] 730 |         let rhs_val = try!(self.gen_expr(env, cur_fun, rhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:775:23
[INFO] [stdout]     |
[INFO] [stdout] 775 |         let lhs_val = try!(self.gen_expr(env, cur_fun, lhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:776:23
[INFO] [stdout]     |
[INFO] [stdout] 776 |         let rhs_val = try!(self.gen_expr(env, cur_fun, rhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:815:23
[INFO] [stdout]     |
[INFO] [stdout] 815 |         let lhs_val = try!(self.gen_expr(env, cur_fun, lhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:816:23
[INFO] [stdout]     |
[INFO] [stdout] 816 |         let rhs_val = try!(self.gen_expr(env, cur_fun, rhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/codegen.rs:883:10
[INFO] [stdout]     |
[INFO] [stdout] 883 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:884:24
[INFO] [stdout]     |
[INFO] [stdout] 884 |         let cond_val = try!(self.gen_expr(env, cur_fun, cond));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:895:24
[INFO] [stdout]     |
[INFO] [stdout] 895 |         let then_val = try!(self.gen_expr(env, cur_fun, then));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:904:24
[INFO] [stdout]     |
[INFO] [stdout] 904 |         let else_val = try!(self.gen_expr(env, cur_fun, els));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:963:19
[INFO] [stdout]     |
[INFO] [stdout] 963 |         let val = try!(self.lookup_var(env, name));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:976:24
[INFO] [stdout]     |
[INFO] [stdout] 976 |                 v.push(try!(e));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:982:13
[INFO] [stdout]     |
[INFO] [stdout] 982 |             try!(self.llvm_struct_alloc(es)),
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/closure.rs:138:7
[INFO] [stdout]     |
[INFO] [stdout] 138 |     }};
[INFO] [stdout]     |       ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/parser.rs:751:1
[INFO] [stdout]     |
[INFO] [stdout] 751 | / lazy_static! {
[INFO] [stdout] 752 | |     pub static ref EXTENV: Mutex<HashMap<String, TypeScheme>> = {
[INFO] [stdout] 753 | |         let mut extenv = HashMap::new();
[INFO] [stdout] 754 | |         extenv.insert("print_int".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 771 | |     };
[INFO] [stdout] 772 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/parser.rs:751:1
[INFO] [stdout]     |
[INFO] [stdout] 751 | / lazy_static! {
[INFO] [stdout] 752 | |     pub static ref EXTENV: Mutex<HashMap<String, TypeScheme>> = {
[INFO] [stdout] 753 | |         let mut extenv = HashMap::new();
[INFO] [stdout] 754 | |         extenv.insert("print_int".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 771 | |     };
[INFO] [stdout] 772 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `macro_export`
[INFO] [stdout]    --> src/parser.rs:397:1
[INFO] [stdout]     |
[INFO] [stdout] 397 | #[macro_export]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the built-in attribute `macro_export` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]    --> src/parser.rs:398:1
[INFO] [stdout]     |
[INFO] [stdout] 398 | named!(pub module_item<NodeKind>,
[INFO] [stdout]     | ^^^^^
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/parser.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 |                 (params
[INFO] [stdout]    |                 ^
[INFO] [stdout] ...
[INFO] [stdout] 72 |                     .collect())
[INFO] [stdout]    |                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 69 ~                 params
[INFO] [stdout] 70 |                     .into_iter()
[INFO] [stdout] 71 |                     .map(|param| (param.get_ident_name().unwrap(), Type::Var(0)))
[INFO] [stdout] 72 ~                     .collect()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `node::NodeKind::*`
[INFO] [stdout]    --> src/parser.rs:833:9
[INFO] [stdout]     |
[INFO] [stdout] 833 |     use node::NodeKind::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `node::FuncDef`
[INFO] [stdout]    --> src/parser.rs:834:9
[INFO] [stdout]     |
[INFO] [stdout] 834 |     use node::FuncDef;
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `node::BinOps::*`
[INFO] [stdout]    --> src/parser.rs:835:9
[INFO] [stdout]     |
[INFO] [stdout] 835 |     use node::BinOps::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `node::BinOps::*`
[INFO] [stdout]    --> src/parser.rs:836:9
[INFO] [stdout]     |
[INFO] [stdout] 836 |     use node::BinOps::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/typing.rs:45:129
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 macro_rules! name { ($id:expr) => ( format!("\'{}", m.entry($id).or_insert_with(|| { *i += 1; *i }).clone()) ) };
[INFO] [stdout]    |                                                                                                                                 ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:233:17
[INFO] [stdout]     |
[INFO] [stdout] 233 |                 try!(unify(a, b, tyenv));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:243:17
[INFO] [stdout]     |
[INFO] [stdout] 243 |                 try!(unify(a, b, tyenv));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:376:47
[INFO] [stdout]     |
[INFO] [stdout] 376 |             for e in $es.iter() { argtys.push(try!(g(e, env, tyenv, idgen))); }
[INFO] [stdout]     |                                               ^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |         NodeKind::Tuple(ref es) => Ok(Type::Tuple(g_seq!(es))),
[INFO] [stdout]     |                                                   ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `g_seq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 |             try!(unify(&try!(g(lhs, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:399:13
[INFO] [stdout]     |
[INFO] [stdout] 399 |             try!(unify(&try!(g(rhs, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:398:25
[INFO] [stdout]     |
[INFO] [stdout] 398 |             try!(unify(&try!(g(lhs, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:399:25
[INFO] [stdout]     |
[INFO] [stdout] 399 |             try!(unify(&try!(g(rhs, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |             try!(unify(&try!(g(lhs, env, tyenv, idgen)), &Type::Float, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:404:13
[INFO] [stdout]     |
[INFO] [stdout] 404 |             try!(unify(&try!(g(rhs, env, tyenv, idgen)), &Type::Float, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:403:25
[INFO] [stdout]     |
[INFO] [stdout] 403 |             try!(unify(&try!(g(lhs, env, tyenv, idgen)), &Type::Float, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:404:25
[INFO] [stdout]     |
[INFO] [stdout] 404 |             try!(unify(&try!(g(rhs, env, tyenv, idgen)), &Type::Float, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |             try!(unify(&a, &b, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:408:21
[INFO] [stdout]     |
[INFO] [stdout] 408 |             let a = try!(g(lhs, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:409:21
[INFO] [stdout]     |
[INFO] [stdout] 409 |             let b = try!(g(rhs, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:420:13
[INFO] [stdout]     |
[INFO] [stdout] 420 |             try!(unify(&callee_ty, &functy, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:416:29
[INFO] [stdout]     |
[INFO] [stdout] 416 |             let callee_ty = try!(g(callee, env, tyenv, idgen));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:376:47
[INFO] [stdout]     |
[INFO] [stdout] 376 |             for e in $es.iter() { argtys.push(try!(g(e, env, tyenv, idgen))); }
[INFO] [stdout]     |                                               ^^^
[INFO] [stdout] ...
[INFO] [stdout] 417 |             let functy = Type::Func(g_seq!(args), Box::new(ty.clone()));
[INFO] [stdout]     |                                     ------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `g_seq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:425:13
[INFO] [stdout]     |
[INFO] [stdout] 425 |             try!(unify(&t, ty, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:424:21
[INFO] [stdout]     |
[INFO] [stdout] 424 |             let t = try!(g(expr, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:444:13
[INFO] [stdout]     |
[INFO] [stdout] 444 |             try!(unify(&ty, &newty, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:442:26
[INFO] [stdout]     |
[INFO] [stdout] 442 |                 Box::new(try!(g(expr, &newenv_body, tyenv, idgen))),
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:450:13
[INFO] [stdout]     |
[INFO] [stdout] 450 |             try!(unify(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:451:18
[INFO] [stdout]     |
[INFO] [stdout] 451 |                 &try!(g(expr, &env, tyenv, idgen)),
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:462:13
[INFO] [stdout]     |
[INFO] [stdout] 462 |             try!(unify(&try!(g(expr, env, tyenv, idgen)), ty, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:462:25
[INFO] [stdout]     |
[INFO] [stdout] 462 |             try!(unify(&try!(g(expr, env, tyenv, idgen)), ty, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:483:13
[INFO] [stdout]     |
[INFO] [stdout] 483 |             try!(unify(&ty, &newty, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:479:30
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     Box::new(try!(g(expr, &newenv_body, tyenv, idgen))),
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:491:13
[INFO] [stdout]     |
[INFO] [stdout] 491 |             try!(unify(&try!(g(cond, env, tyenv, idgen)), &Type::Bool, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:494:13
[INFO] [stdout]     |
[INFO] [stdout] 494 |             try!(unify(&t, &e, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:491:25
[INFO] [stdout]     |
[INFO] [stdout] 491 |             try!(unify(&try!(g(cond, env, tyenv, idgen)), &Type::Bool, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:492:21
[INFO] [stdout]     |
[INFO] [stdout] 492 |             let t = try!(g(then_, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:493:21
[INFO] [stdout]     |
[INFO] [stdout] 493 |             let e = try!(g(else_, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:498:13
[INFO] [stdout]     |
[INFO] [stdout] 498 |             try!(unify(&try!(g(e1, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:498:25
[INFO] [stdout]     |
[INFO] [stdout] 498 |             try!(unify(&try!(g(e1, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:499:21
[INFO] [stdout]     |
[INFO] [stdout] 499 |             let t = try!(g(e2, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:504:13
[INFO] [stdout]     |
[INFO] [stdout] 504 |             try!(unify(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |             try!(unify(&try!(g(e2, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:505:18
[INFO] [stdout]     |
[INFO] [stdout] 505 |                 &try!(g(e1, env, tyenv, idgen)),
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:509:25
[INFO] [stdout]     |
[INFO] [stdout] 509 |             try!(unify(&try!(g(e2, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:514:13
[INFO] [stdout]     |
[INFO] [stdout] 514 |             try!(unify(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:519:13
[INFO] [stdout]     |
[INFO] [stdout] 519 |             try!(unify(&try!(g(e2, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:513:21
[INFO] [stdout]     |
[INFO] [stdout] 513 |             let t = try!(g(e3, env, tyenv, idgen));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:515:18
[INFO] [stdout]     |
[INFO] [stdout] 515 |                 &try!(g(e1, env, tyenv, idgen)),
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/typing.rs:519:25
[INFO] [stdout]     |
[INFO] [stdout] 519 |             try!(unify(&try!(g(e2, env, tyenv, idgen)), &Type::Int, tyenv));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |             try!(self.gen_expr(&env, Some(main), &expr));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |                 try!(self.gen_fun(&mut env, &fun));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:262:36
[INFO] [stdout]     |
[INFO] [stdout] 262 |         LLVMBuildRet(self.builder, try!(self.gen_int(0)));
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:354:23
[INFO] [stdout]     |
[INFO] [stdout] 354 |             let var = try!(self.declare_local_var(
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:365:23
[INFO] [stdout]     |
[INFO] [stdout] 365 |         let ret_val = try!(self.gen_expr(&env, Some(llvm_fun), &*cls.body));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:466:29
[INFO] [stdout]     |
[INFO] [stdout] 466 |         let llvm_expr_val = try!(self.gen_expr(env, cur_fun, expr));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |             try!(self.declare_local_var(&mut newenv, cur_fun, name, LLVMTypeOf(llvm_expr_val),));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:482:29
[INFO] [stdout]     |
[INFO] [stdout] 482 |         let llvm_expr_val = try!(self.gen_expr(env, cur_fun, expr));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:484:33
[INFO] [stdout]     |
[INFO] [stdout] 484 |             let llvm_elem_val = try!(self.llvm_struct_elem_extract(llvm_expr_val, i as u32));
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:486:17
[INFO] [stdout]     |
[INFO] [stdout] 486 |                 try!(
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:547:17
[INFO] [stdout]     |
[INFO] [stdout] 547 |         let x = try!(
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:606:13
[INFO] [stdout]     |
[INFO] [stdout] 606 |             try!(self.llvm_struct_alloc(actual_fv))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:608:22
[INFO] [stdout]     |
[INFO] [stdout] 608 |         let newcls = try!(self.llvm_struct_alloc(vec![fun, actual_fv]));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:623:19
[INFO] [stdout]     |
[INFO] [stdout] 623 |         let fun = try!(self.lookup_var(env, &cls.entry)).retrieve();
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:627:24
[INFO] [stdout]     |
[INFO] [stdout] 627 |                 v.push(try!(self.lookup_var(env, name)).get(self.builder))
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:631:28
[INFO] [stdout]     |
[INFO] [stdout] 631 |         let (new_env, _) = try!(self.make_cls(env, name.clone(), fun, fv));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:632:17
[INFO] [stdout]     |
[INFO] [stdout] 632 |         let x = try!(self.gen_expr(&new_env, cur_fun, body));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:649:17
[INFO] [stdout]     |
[INFO] [stdout] 649 |         let x = try!(self.lookup_var(env, name)).get(self.builder);
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:650:19
[INFO] [stdout]     |
[INFO] [stdout] 650 |         let fun = try!(self.llvm_struct_elem_load(x, 0));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:651:18
[INFO] [stdout]     |
[INFO] [stdout] 651 |         let fv = try!(self.llvm_struct_elem_load(x, 1));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:655:28
[INFO] [stdout]     |
[INFO] [stdout] 655 |             let llvm_arg = try!(self.gen_expr(env, cur_fun, &arg));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:694:27
[INFO] [stdout]     |
[INFO] [stdout] 694 |             args_val.push(try!(self.gen_expr(env, cur_fun, &arg)))
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:708:19
[INFO] [stdout]     |
[INFO] [stdout] 708 |         let fun = try!(self.lookup_var(env, name)).retrieve();
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:729:23
[INFO] [stdout]     |
[INFO] [stdout] 729 |         let lhs_val = try!(self.gen_expr(env, cur_fun, lhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:730:23
[INFO] [stdout]     |
[INFO] [stdout] 730 |         let rhs_val = try!(self.gen_expr(env, cur_fun, rhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:775:23
[INFO] [stdout]     |
[INFO] [stdout] 775 |         let lhs_val = try!(self.gen_expr(env, cur_fun, lhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:776:23
[INFO] [stdout]     |
[INFO] [stdout] 776 |         let rhs_val = try!(self.gen_expr(env, cur_fun, rhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:815:23
[INFO] [stdout]     |
[INFO] [stdout] 815 |         let lhs_val = try!(self.gen_expr(env, cur_fun, lhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:816:23
[INFO] [stdout]     |
[INFO] [stdout] 816 |         let rhs_val = try!(self.gen_expr(env, cur_fun, rhs));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/codegen.rs:883:10
[INFO] [stdout]     |
[INFO] [stdout] 883 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:884:24
[INFO] [stdout]     |
[INFO] [stdout] 884 |         let cond_val = try!(self.gen_expr(env, cur_fun, cond));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:895:24
[INFO] [stdout]     |
[INFO] [stdout] 895 |         let then_val = try!(self.gen_expr(env, cur_fun, then));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:904:24
[INFO] [stdout]     |
[INFO] [stdout] 904 |         let else_val = try!(self.gen_expr(env, cur_fun, els));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:963:19
[INFO] [stdout]     |
[INFO] [stdout] 963 |         let val = try!(self.lookup_var(env, name));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:976:24
[INFO] [stdout]     |
[INFO] [stdout] 976 |                 v.push(try!(e));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/codegen.rs:982:13
[INFO] [stdout]     |
[INFO] [stdout] 982 |             try!(self.llvm_struct_alloc(es)),
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/closure.rs:138:7
[INFO] [stdout]     |
[INFO] [stdout] 138 |     }};
[INFO] [stdout]     |       ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/parser.rs:751:1
[INFO] [stdout]     |
[INFO] [stdout] 751 | / lazy_static! {
[INFO] [stdout] 752 | |     pub static ref EXTENV: Mutex<HashMap<String, TypeScheme>> = {
[INFO] [stdout] 753 | |         let mut extenv = HashMap::new();
[INFO] [stdout] 754 | |         extenv.insert("print_int".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 771 | |     };
[INFO] [stdout] 772 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/parser.rs:751:1
[INFO] [stdout]     |
[INFO] [stdout] 751 | / lazy_static! {
[INFO] [stdout] 752 | |     pub static ref EXTENV: Mutex<HashMap<String, TypeScheme>> = {
[INFO] [stdout] 753 | |         let mut extenv = HashMap::new();
[INFO] [stdout] 754 | |         extenv.insert("print_int".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 771 | |     };
[INFO] [stdout] 772 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/typing.rs:41:22
[INFO] [stdout]    |
[INFO] [stdout] 41 |                     .trim_right_matches(" * ")
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 41 -                     .trim_right_matches(" * ")
[INFO] [stdout] 41 +                     .trim_end_matches(" * ")
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/typing.rs:41:22
[INFO] [stdout]    |
[INFO] [stdout] 41 |                     .trim_right_matches(" * ")
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 41 -                     .trim_right_matches(" * ")
[INFO] [stdout] 41 +                     .trim_end_matches(" * ")
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> src/codegen.rs:340:43
[INFO] [stdout]     |
[INFO] [stdout] 340 |             for (i, &(ref param_name, ref param_ty)) in cls.formal_fv.iter().enumerate() {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_ty`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]    --> src/codegen.rs:461:9
[INFO] [stdout]     |
[INFO] [stdout] 461 |         ty: &Type,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]    --> src/codegen.rs:483:33
[INFO] [stdout]     |
[INFO] [stdout] 483 |         for (i, &(ref name, ref ty)) in xs.iter().enumerate() {
[INFO] [stdout]     |                                 ^^ help: if this is intentional, prefix it with an underscore: `_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cur_bb_has_no_terminator` is never used
[INFO] [stdout]   --> src/codegen.rs:85:11
[INFO] [stdout]    |
[INFO] [stdout] 85 | unsafe fn cur_bb_has_no_terminator(builder: LLVMBuilderRef) -> bool {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:641:51
[INFO] [stdout]     |
[INFO] [stdout] 641 |             IResult::Incomplete(needed) => panic!(format!("imcomplete: {:?}", needed)),
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 641 -             IResult::Incomplete(needed) => panic!(format!("imcomplete: {:?}", needed)),
[INFO] [stdout] 641 +             IResult::Incomplete(needed) => panic!("imcomplete: {:?}", needed),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:642:43
[INFO] [stdout]     |
[INFO] [stdout] 642 |             IResult::Error(err) => panic!(format!("error: {:?}", err)),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 642 -             IResult::Error(err) => panic!(format!("error: {:?}", err)),
[INFO] [stdout] 642 +             IResult::Error(err) => panic!("error: {:?}", err),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:673:51
[INFO] [stdout]     |
[INFO] [stdout] 673 |             IResult::Incomplete(needed) => panic!(format!("imcomplete: {:?}", needed)),
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 673 -             IResult::Incomplete(needed) => panic!(format!("imcomplete: {:?}", needed)),
[INFO] [stdout] 673 +             IResult::Incomplete(needed) => panic!("imcomplete: {:?}", needed),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:674:43
[INFO] [stdout]     |
[INFO] [stdout] 674 |             IResult::Error(err) => panic!(format!("error: {:?}", err)),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 674 -             IResult::Error(err) => panic!(format!("error: {:?}", err)),
[INFO] [stdout] 674 +             IResult::Error(err) => panic!("error: {:?}", err),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/codegen.rs:430:25
[INFO] [stdout]     |
[INFO] [stdout] 430 |             _ => panic!(format!("not implemented {:?}", closure)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 430 -             _ => panic!(format!("not implemented {:?}", closure)),
[INFO] [stdout] 430 +             _ => panic!("not implemented {:?}", closure),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a dangling pointer will be produced because the temporary `CString` will be dropped
[INFO] [stdout]    --> src/codegen.rs:728:60
[INFO] [stdout]     |
[INFO] [stdout] 728 |         let inst_name = |s: &str| CString::new(s).unwrap().as_ptr();
[INFO] [stdout]     |                                   ------------------------ ^^^^^^ this pointer will immediately be invalid
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: you must make sure that the variable you bind the `CString` to lives at least as long as the pointer returned by the call to `as_ptr`
[INFO] [stdout]     = help: in particular, if this pointer is returned from the current function, binding the `CString` inside the function will not suffice
[INFO] [stdout]     = help: for more information, see <https://doc.rust-lang.org/reference/destructors.html>
[INFO] [stdout]     = note: `#[warn(dangling_pointers_from_temporaries)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a dangling pointer will be produced because the temporary `CString` will be dropped
[INFO] [stdout]    --> src/codegen.rs:774:60
[INFO] [stdout]     |
[INFO] [stdout] 774 |         let inst_name = |s: &str| CString::new(s).unwrap().as_ptr();
[INFO] [stdout]     |                                   ------------------------ ^^^^^^ this pointer will immediately be invalid
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: you must make sure that the variable you bind the `CString` to lives at least as long as the pointer returned by the call to `as_ptr`
[INFO] [stdout]     = help: in particular, if this pointer is returned from the current function, binding the `CString` inside the function will not suffice
[INFO] [stdout]     = help: for more information, see <https://doc.rust-lang.org/reference/destructors.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a dangling pointer will be produced because the temporary `CString` will be dropped
[INFO] [stdout]    --> src/codegen.rs:814:60
[INFO] [stdout]     |
[INFO] [stdout] 814 |         let inst_name = |s: &str| CString::new(s).unwrap().as_ptr();
[INFO] [stdout]     |                                   ------------------------ ^^^^^^ this pointer will immediately be invalid
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: you must make sure that the variable you bind the `CString` to lives at least as long as the pointer returned by the call to `as_ptr`
[INFO] [stdout]     = help: in particular, if this pointer is returned from the current function, binding the `CString` inside the function will not suffice
[INFO] [stdout]     = help: for more information, see <https://doc.rust-lang.org/reference/destructors.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/codegen.rs:954:20
[INFO] [stdout]     |
[INFO] [stdout] 954 |             panic!(format!("not found variable '{}'", name))
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 954 -             panic!(format!("not found variable '{}'", name))
[INFO] [stdout] 954 +             panic!("not found variable '{}'", name)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/codegen.rs:1033:25
[INFO] [stdout]      |
[INFO] [stdout] 1033 |             _ => panic!(format!("{:?}", self)),
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]      = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]      |
[INFO] [stdout] 1033 -             _ => panic!(format!("{:?}", self)),
[INFO] [stdout] 1033 +             _ => panic!("{:?}", self),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/codegen.rs:1081:25
[INFO] [stdout]      |
[INFO] [stdout] 1081 |             _ => panic!(format!("{:?}", self)),
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]      = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]      |
[INFO] [stdout] 1081 -             _ => panic!(format!("{:?}", self)),
[INFO] [stdout] 1081 +             _ => panic!("{:?}", self),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/main.rs:40:51
[INFO] [stdout]    |
[INFO] [stdout] 40 |             IResult::Incomplete(needed) => panic!(format!("imcomplete: {:?}", needed)),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 40 -             IResult::Incomplete(needed) => panic!(format!("imcomplete: {:?}", needed)),
[INFO] [stdout] 40 +             IResult::Incomplete(needed) => panic!("imcomplete: {:?}", needed),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/main.rs:41:43
[INFO] [stdout]    |
[INFO] [stdout] 41 |             IResult::Error(err) => panic!(format!("error: {:?}", err)),
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 41 -             IResult::Error(err) => panic!(format!("error: {:?}", err)),
[INFO] [stdout] 41 +             IResult::Error(err) => panic!("error: {:?}", err),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/main.rs:40:51
[INFO] [stdout]    |
[INFO] [stdout] 40 |             IResult::Incomplete(needed) => panic!(format!("imcomplete: {:?}", needed)),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 40 -             IResult::Incomplete(needed) => panic!(format!("imcomplete: {:?}", needed)),
[INFO] [stdout] 40 +             IResult::Incomplete(needed) => panic!("imcomplete: {:?}", needed),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/main.rs:41:43
[INFO] [stdout]    |
[INFO] [stdout] 41 |             IResult::Error(err) => panic!(format!("error: {:?}", err)),
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 41 -             IResult::Error(err) => panic!(format!("error: {:?}", err)),
[INFO] [stdout] 41 +             IResult::Error(err) => panic!("error: {:?}", err),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remain`
[INFO] [stdout]    --> src/parser.rs:843:23
[INFO] [stdout]     |
[INFO] [stdout] 843 |         IResult::Done(remain, node) => {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_remain`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> src/codegen.rs:340:43
[INFO] [stdout]     |
[INFO] [stdout] 340 |             for (i, &(ref param_name, ref param_ty)) in cls.formal_fv.iter().enumerate() {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rcaml` (lib test); 93 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   No space left on device (os error 28)
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   failed to parse process output: `/opt/rustwide/rustup-home/toolchains/a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d/bin/rustc --crate-name rcaml --edition=2015 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=62b4041b6d39ff53 -C extra-filename=-d300356a05be8e55 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern ansi_term=/opt/rustwide/target/debug/deps/libansi_term-d2d60672f51e6edb.rmeta --extern clap=/opt/rustwide/target/debug/deps/libclap-0e571f72a4cefcd1.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-646c24ed1f4ec12e.rmeta --extern libc=/opt/rustwide/target/debug/deps/liblibc-af013fafbc79ae99.rmeta --extern llvm_sys=/opt/rustwide/target/debug/deps/libllvm_sys-78916f45146c39d2.rmeta --extern nom=/opt/rustwide/target/debug/deps/libnom-15f64f9b8bf43acb.rmeta --extern ordered_float=/opt/rustwide/target/debug/deps/libordered_float-d4b544d60a9e9cb2.rmeta --extern rand=/opt/rustwide/target/debug/deps/librand-9ce63030dd9507d8.rmeta --cap-lints=forbid -L native=/opt/rustwide/target/debug/build/llvm-sys-0f3d36009bcb16f7/out -L native=/usr/lib/llvm-18/lib` (exit status: 1)
[INFO] running `Command { std: "docker" "inspect" "900017fa4ba965687f0415febde3e91492887809eeafd9026267896c6474b4a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "900017fa4ba965687f0415febde3e91492887809eeafd9026267896c6474b4a9", kill_on_drop: false }`
[INFO] [stdout] 900017fa4ba965687f0415febde3e91492887809eeafd9026267896c6474b4a9
