[INFO] crate rink 0.4.5 is already in cache
[INFO] checking rink-0.4.5 against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] extracting crate rink 0.4.5 into /workspace/builds/worker-6/source
[INFO] validating manifest of crates.io crate rink 0.4.5 on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking crates.io crate rink 0.4.5
[INFO] finished tweaking crates.io crate rink 0.4.5
[INFO] tweaked toml for crates.io crate rink 0.4.5 written to /workspace/builds/worker-6/source/Cargo.toml
[INFO] crate crates.io crate rink 0.4.5 already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "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] 88a61553b6e2bb4e64a7e3cd49fc63bcaae44bc67803b55b2f4e7ab76b594272
[INFO] running `"docker" "start" "-a" "88a61553b6e2bb4e64a7e3cd49fc63bcaae44bc67803b55b2f4e7ab76b594272"`
[INFO] [stderr]     Checking json v0.10.3
[INFO] [stderr]    Compiling indexmap v1.3.0
[INFO] [stderr]    Compiling openssl-sys v0.9.52
[INFO] [stderr]    Compiling nix v0.7.0
[INFO] [stderr]     Checking backtrace-sys v0.1.32
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking flate2 v1.0.12
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking mio v0.6.19
[INFO] [stderr]    Compiling parse-zoneinfo v0.1.1
[INFO] [stderr]     Checking cookie v0.12.0
[INFO] [stderr]    Compiling syn v1.0.7
[INFO] [stderr]     Checking parking_lot_core v0.6.2
[INFO] [stderr]     Checking num-iter v0.1.39
[INFO] [stderr]     Checking rust-gmp v0.5.0
[INFO] [stderr]     Checking backtrace v0.3.40
[INFO] [stderr]     Checking tokio-threadpool v0.1.16
[INFO] [stderr]     Checking num v0.1.42
[INFO] [stderr]     Checking rand v0.6.5
[INFO] [stderr]     Checking error-chain v0.12.1
[INFO] [stderr]     Checking parking_lot v0.9.0
[INFO] [stderr]     Checking chrono v0.2.25
[INFO] [stderr]     Checking tokio-io v0.1.12
[INFO] [stderr]     Checking http v0.1.19
[INFO] [stderr]     Checking string v0.2.1
[INFO] [stderr]     Checking tokio-buf v0.1.1
[INFO] [stderr]     Checking publicsuffix v1.5.3
[INFO] [stderr]    Compiling openssl v0.10.25
[INFO] [stderr]    Compiling native-tls v0.2.3
[INFO] [stderr]    Compiling chrono-tz v0.2.5
[INFO] [stderr]     Checking tokio-reactor v0.1.10
[INFO] [stderr]     Checking chrono-humanize v0.0.6
[INFO] [stderr]     Checking uuid v0.7.4
[INFO] [stderr]     Checking linefeed v0.4.0
[INFO] [stderr]     Checking tokio-tcp v0.1.3
[INFO] [stderr]     Checking http-body v0.1.0
[INFO] [stderr]     Checking h2 v0.1.26
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]    Compiling synstructure v0.12.1
[INFO] [stderr]    Compiling serde_derive v1.0.102
[INFO] [stderr]     Checking hyper v0.12.35
[INFO] [stderr]    Compiling failure_derive v0.1.6
[INFO] [stderr]     Checking failure v0.1.6
[INFO] [stderr]     Checking hyper-tls v0.3.2
[INFO] [stderr]     Checking serde v1.0.101
[INFO] [stderr]     Checking serde_json v1.0.41
[INFO] [stderr]     Checking serde_urlencoded v0.5.5
[INFO] [stderr]     Checking cookie_store v0.7.0
[INFO] [stderr]     Checking reqwest v0.9.22
[INFO] [stderr]     Checking rink v0.4.5 (/opt/rustwide/workdir)
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 96 |             Expr::Frac(ref left, ref right) => operator!(left div / right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:32:29
[INFO] [stderr]    |
[INFO] [stderr] 32 |                 let right = try!(self.eval(&**$right));
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] ...
[INFO] [stderr] 96 |             Expr::Frac(ref left, ref right) => operator!(left div / right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 97 |             Expr::Add(ref left, ref right)  => operator!(left add + right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:32:29
[INFO] [stderr]    |
[INFO] [stderr] 32 |                 let right = try!(self.eval(&**$right));
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] ...
[INFO] [stderr] 97 |             Expr::Add(ref left, ref right)  => operator!(left add + right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 98 |             Expr::Sub(ref left, ref right)  => operator!(left sub - right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:32:29
[INFO] [stderr]    |
[INFO] [stderr] 32 |                 let right = try!(self.eval(&**$right));
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] ...
[INFO] [stderr] 98 |             Expr::Sub(ref left, ref right)  => operator!(left sub - right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 99 |             Expr::Pow(ref left, ref right)  => operator!(left pow ^ right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:32:29
[INFO] [stderr]    |
[INFO] [stderr] 32 |                 let right = try!(self.eval(&**$right));
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] ...
[INFO] [stderr] 99 |             Expr::Pow(ref left, ref right)  => operator!(left pow ^ right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 102 |                 temperature!(left, "C", "zerocelsius", "kelvin"),
[INFO] [stderr]     |                 ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 104 |                 temperature!(left, "F", "zerofahrenheit", "degrankine"),
[INFO] [stderr]     |                 ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 106 |                 temperature!(left, "Ré", "zerocelsius", "reaumur_absolute"),
[INFO] [stderr]     |                 ----------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 108 |                 temperature!(left, "Rø", "zeroromer", "romer_absolute"),
[INFO] [stderr]     |                 ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 110 |                 temperature!(left, "De", "zerodelisle", "delisle_absolute"),
[INFO] [stderr]     |                 ----------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 112 |                 temperature!(left, "N", "zerocelsius", "newton_absolute"),
[INFO] [stderr]     |                 --------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:116:29
[INFO] [stderr]     |
[INFO] [stderr] 116 |                     let b = try!(self.eval(b));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:134:27
[INFO] [stderr]     |
[INFO] [stderr] 134 |                 let val = try!(self.eval(val));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:154:28
[INFO] [stderr]     |
[INFO] [stderr] 154 |                 let args = try!(
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:376:34
[INFO] [stderr]     |
[INFO] [stderr] 376 |                 let (left, lv) = try!(self.eval_unit_name(left));
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:377:35
[INFO] [stderr]     |
[INFO] [stderr] 377 |                 let (right, rv) = try!(self.eval_unit_name(right));
[INFO] [stderr]     |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:388:37
[INFO] [stderr]     |
[INFO] [stderr] 388 |                     let (acc, av) = try!(acc);
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:389:35
[INFO] [stderr]     |
[INFO] [stderr] 389 |                     let (b, bv) = try!(self.eval_unit_name(b));
[INFO] [stderr]     |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:398:27
[INFO] [stderr]     |
[INFO] [stderr] 398 |                 let res = try!(self.eval(exp));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:411:34
[INFO] [stderr]     |
[INFO] [stderr] 411 |                 let (left, lv) = try!(self.eval_unit_name(left));
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:425:27
[INFO] [stderr]     |
[INFO] [stderr] 425 |                 let res = try!(self.eval(expr));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:448:28
[INFO] [stderr]     |
[INFO] [stderr] 448 |                 let left = try!(self.eval_unit_name(left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:449:29
[INFO] [stderr]     |
[INFO] [stderr] 449 |                 let right = try!(self.eval_unit_name(right));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:540:21
[INFO] [stderr]     |
[INFO] [stderr] 540 |         let units = try!(list.iter().map(|x| {
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:544:25
[INFO] [stderr]     |
[INFO] [stderr] 544 |             let first = try!(units.first().ok_or(
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:546:13
[INFO] [stderr]     |
[INFO] [stderr] 546 |             try!(units.iter().skip(1).map(|x| {
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:666:27
[INFO] [stderr]     |
[INFO] [stderr] 666 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:684:27
[INFO] [stderr]     |
[INFO] [stderr] 684 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:774:27
[INFO] [stderr]     |
[INFO] [stderr] 774 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:798:27
[INFO] [stderr]     |
[INFO] [stderr] 798 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:808:27
[INFO] [stderr]     |
[INFO] [stderr] 808 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:823:27
[INFO] [stderr]     |
[INFO] [stderr] 823 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:894:35
[INFO] [stderr]     |
[INFO] [stderr] 894 |                         let val = try!(self.eval(expr));
[INFO] [stderr]     |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:936:35
[INFO] [stderr]     |
[INFO] [stderr] 936 |                         let val = try!(self.eval(expr));
[INFO] [stderr]     |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/eval.rs:1035:27
[INFO] [stderr]      |
[INFO] [stderr] 1035 |                 let val = try!(self.eval(expr));
[INFO] [stderr]      |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/eval.rs:1039:36
[INFO] [stderr]      |
[INFO] [stderr] 1039 |                         let list = try!(self.to_list(&n, units));
[INFO] [stderr]      |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/eval.rs:1068:25
[INFO] [stderr]      |
[INFO] [stderr] 1068 |                         try!(s.to_reply(self).map_err(QueryError::Generic))
[INFO] [stderr]      |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/date.rs:291:5
[INFO] [stderr]     |
[INFO] [stderr] 291 |     try!(res.map_err(|e| (e, count)));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/date.rs:396:49
[INFO] [stderr]     |
[INFO] [stderr] 396 |                 let res = DatePattern::Optional(try!(parse_datepattern(iter)));
[INFO] [stderr]     |                                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:205:25
[INFO] [stderr]     |
[INFO] [stderr] 205 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:208:25
[INFO] [stderr]     |
[INFO] [stderr] 208 |                         try!(recurse(first, fmt, Prec::Pow));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:211:25
[INFO] [stderr]     |
[INFO] [stderr] 211 |                         try!(write!(fmt, " "));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:212:25
[INFO] [stderr]     |
[INFO] [stderr] 212 |                         try!(recurse(expr, fmt, Prec::Pow));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:215:25
[INFO] [stderr]     |
[INFO] [stderr] 215 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:220:21
[INFO] [stderr]     |
[INFO] [stderr] 220 |                     try!(write!(fmt, "{}(", name));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:222:25
[INFO] [stderr]     |
[INFO] [stderr] 222 |                         try!(recurse(first, fmt, Prec::Equals));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:225:25
[INFO] [stderr]     |
[INFO] [stderr] 225 |                         try!(write!(fmt, ", "));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:226:25
[INFO] [stderr]     |
[INFO] [stderr] 226 |                         try!(recurse(arg, fmt, Prec::Equals));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:235:21
[INFO] [stderr]     |
[INFO] [stderr] 235 |                     try!(write!(fmt, "+"));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:239:21
[INFO] [stderr]     |
[INFO] [stderr] 239 |                     try!(write!(fmt, "-"));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:245:25
[INFO] [stderr]     |
[INFO] [stderr] 245 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:247:21
[INFO] [stderr]     |
[INFO] [stderr] 247 |                     try!(recurse(expr, fmt, Prec::Mul));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:248:21
[INFO] [stderr]     |
[INFO] [stderr] 248 |                     try!(write!(fmt, " {}", op));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:250:25
[INFO] [stderr]     |
[INFO] [stderr] 250 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:256:25
[INFO] [stderr]     |
[INFO] [stderr] 256 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:258:21
[INFO] [stderr]     |
[INFO] [stderr] 258 |                     try!(write!(fmt, "{} of ", field));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:259:21
[INFO] [stderr]     |
[INFO] [stderr] 259 |                     try!(recurse(expr, fmt, Prec::Div));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:261:25
[INFO] [stderr]     |
[INFO] [stderr] 261 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:279:17
[INFO] [stderr]     |
[INFO] [stderr] 279 |                 try!(write!(fmt, "["));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:281:21
[INFO] [stderr]     |
[INFO] [stderr] 281 |                     try!(p.fmt(fmt));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/value.rs:87:70
[INFO] [stderr]    |
[INFO] [stderr] 87 |                     GenericDateTime::Fixed(left) => left.checked_add(try!(date::to_duration(
[INFO] [stderr]    |                                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/value.rs:90:73
[INFO] [stderr]    |
[INFO] [stderr] 90 |                     GenericDateTime::Timezone(left) => left.checked_add(try!(date::to_duration(
[INFO] [stderr]    |                                                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/value.rs:116:70
[INFO] [stderr]     |
[INFO] [stderr] 116 |                     GenericDateTime::Fixed(left) => left.checked_sub(try!(date::to_duration(
[INFO] [stderr]     |                                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/value.rs:119:73
[INFO] [stderr]     |
[INFO] [stderr] 119 |                     GenericDateTime::Timezone(left) => left.checked_sub(try!(date::to_duration(
[INFO] [stderr]     |                                                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:318:9
[INFO] [stderr]     |
[INFO] [stderr] 318 |         try!(writeln!(fmt, "Conformance error: {} != {}", self.left, self.right));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:343:9
[INFO] [stderr]     |
[INFO] [stderr] 343 |         try!(write!(fmt, "{}", self.string));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:345:13
[INFO] [stderr]     |
[INFO] [stderr] 345 |             try!(write!(fmt, " ({})", human));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:371:9
[INFO] [stderr]     |
[INFO] [stderr] 371 |         try!(write!(fmt, "Definition: {}", self.canon_name));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:373:13
[INFO] [stderr]     |
[INFO] [stderr] 373 |             try!(write!(fmt, " = {}", def));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:376:13
[INFO] [stderr]     |
[INFO] [stderr] 376 |             try!(write!(fmt, " = {}", value.format("n u p")));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:379:13
[INFO] [stderr]     |
[INFO] [stderr] 379 |             try!(write!(fmt, ". {}", doc));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:432:9
[INFO] [stderr]     |
[INFO] [stderr] 432 |         try!(write!(fmt, "{}", res));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:443:9
[INFO] [stderr]     |
[INFO] [stderr] 443 |         try!(write!(fmt, "{}",
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/substance.rs:66:33
[INFO] [stderr]    |
[INFO] [stderr] 66 |                     let input = try!(
[INFO] [stderr]    |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/substance.rs:71:35
[INFO] [stderr]    |
[INFO] [stderr] 71 |                         let res = try!((&prop.output / &input).ok_or_else(
[INFO] [stderr]    |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/substance.rs:80:34
[INFO] [stderr]    |
[INFO] [stderr] 80 |                     let output = try!(
[INFO] [stderr]    |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/substance.rs:85:35
[INFO] [stderr]    |
[INFO] [stderr] 85 |                         let res = try!((&prop.input / &output).ok_or_else(
[INFO] [stderr]    |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:117:29
[INFO] [stderr]     |
[INFO] [stderr] 117 |                 properties: try!(self.properties.properties.iter().map(|(k, v)| {
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:120:32
[INFO] [stderr]     |
[INFO] [stderr] 120 |                         (None, try!((&res / &v.input)
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:143:26
[INFO] [stderr]     |
[INFO] [stderr] 143 |                         &try!((
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:156:34
[INFO] [stderr]     |
[INFO] [stderr] 156 |                     let output = try!((
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:171:43
[INFO] [stderr]     |
[INFO] [stderr] 171 | ...                   let mut res = try!((
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:193:29
[INFO] [stderr]     |
[INFO] [stderr] 193 |                 let input = try!((&v.input / &self.amount).ok_or_else(|| format!(
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:198:30
[INFO] [stderr]     |
[INFO] [stderr] 198 |                 let output = try!((&v.output / &self.amount).ok_or_else(|| format!(
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:207:31
[INFO] [stderr]     |
[INFO] [stderr] 207 |                     let div = try!(
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:219:31
[INFO] [stderr]     |
[INFO] [stderr] 219 |                     let div = try!(
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:231:22
[INFO] [stderr]     |
[INFO] [stderr] 231 |                     &try!((
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:244:30
[INFO] [stderr]     |
[INFO] [stderr] 244 |                 let output = try!((
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:259:39
[INFO] [stderr]     |
[INFO] [stderr] 259 |                         let mut res = try!((
[INFO] [stderr]     |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:286:29
[INFO] [stderr]     |
[INFO] [stderr] 286 |                 properties: try!(
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:303:29
[INFO] [stderr]     |
[INFO] [stderr] 303 |                 properties: try!(self.properties.properties.iter().map(|(k, v)| {
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:306:32
[INFO] [stderr]     |
[INFO] [stderr] 306 |                         (None, try!((&res / &v.input)
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:320:43
[INFO] [stderr]     |
[INFO] [stderr] 320 | ...                   let mut res = try!((
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:340:29
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 let input = try!((&v.input / &self.amount).ok_or_else(|| format!(
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:345:30
[INFO] [stderr]     |
[INFO] [stderr] 345 |                 let output = try!((&v.output / &self.amount).ok_or_else(|| format!(
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:351:31
[INFO] [stderr]     |
[INFO] [stderr] 351 |                     let div = try!(
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:360:31
[INFO] [stderr]     |
[INFO] [stderr] 360 |                     let div = try!(
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:377:39
[INFO] [stderr]     |
[INFO] [stderr] 377 |                         let mut res = try!((
[INFO] [stderr]     |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:404:29
[INFO] [stderr]     |
[INFO] [stderr] 404 |                 properties: try!(
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:427:21
[INFO] [stderr]     |
[INFO] [stderr] 427 |             amount: try!((&self.amount * other).ok_or_else(
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:439:21
[INFO] [stderr]     |
[INFO] [stderr] 439 |             amount: try!((&self.amount / other).ok_or_else(
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/btc.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     try!(f.read_to_string(&mut buf).map_err(|x| format!("{}", x)));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/btc.rs:17:18
[INFO] [stderr]    |
[INFO] [stderr] 17 |     let parsed = try!(json::parse(&*buf).map_err(|x| format!("{}", x)));
[INFO] [stderr]    |                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:155:20
[INFO] [stderr]     |
[INFO] [stderr] 155 |     let mut path = try!(config_dir());
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:161:13
[INFO] [stderr]     |
[INFO] [stderr] 161 |             try!(f.read_to_end(&mut buf));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:178:17
[INFO] [stderr]     |
[INFO] [stderr] 178 |     let units = try!(units);
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:374:20
[INFO] [stderr]     |
[INFO] [stderr] 374 |     let mut path = try!(config_dir());
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:384:25
[INFO] [stderr]     |
[INFO] [stderr] 384 |             let stats = try!(f.metadata().map_err(ts));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:385:25
[INFO] [stderr]     |
[INFO] [stderr] 385 |             let mtime = try!(stats.modified().map_err(ts));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:387:27
[INFO] [stderr]     |
[INFO] [stderr] 387 |             let elapsed = try!(now.duration_since(mtime).map_err(ts));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:395:13
[INFO] [stderr]     |
[INFO] [stderr] 395 |             try!(fs::create_dir_all(path.parent().unwrap()).map_err(|x| format!("{}", x)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:396:25
[INFO] [stderr]     |
[INFO] [stderr] 396 |             let mut f = try!(File::create(tmppath.clone()).map_err(|x| format!("{}", x)));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:402:13
[INFO] [stderr]     |
[INFO] [stderr] 402 |             try!(f.sync_all().map_err(|x| format!("{}", x)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:404:13
[INFO] [stderr]     |
[INFO] [stderr] 404 |             try!(fs::rename(tmppath.clone(), path.clone())
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 204 |                       "sqrt" => func!(fn sqrt(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 205 | |                         num.root(2).map(Value::Number)
[INFO] [stderr] 206 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 204 |                       "sqrt" => func!(fn sqrt(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 205 | |                         num.root(2).map(Value::Number)
[INFO] [stderr] 206 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 207 |                       "exp" => func!(fn exp(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 208 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 209 | |                             value: Num::Float(num.value.to_f64().exp()),
[INFO] [stderr] 210 | |                             unit: num.unit.clone(),
[INFO] [stderr] 211 | |                         }))
[INFO] [stderr] 212 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 207 |                       "exp" => func!(fn exp(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 208 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 209 | |                             value: Num::Float(num.value.to_f64().exp()),
[INFO] [stderr] 210 | |                             unit: num.unit.clone(),
[INFO] [stderr] 211 | |                         }))
[INFO] [stderr] 212 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 213 |                       "ln" => func!(fn ln(num: Number) {
[INFO] [stderr]     |  _____________________________-
[INFO] [stderr] 214 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 215 | |                             value: Num::Float(num.value.to_f64().ln()),
[INFO] [stderr] 216 | |                             unit: num.unit.clone(),
[INFO] [stderr] 217 | |                         }))
[INFO] [stderr] 218 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 213 |                       "ln" => func!(fn ln(num: Number) {
[INFO] [stderr]     |  _____________________________-
[INFO] [stderr] 214 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 215 | |                             value: Num::Float(num.value.to_f64().ln()),
[INFO] [stderr] 216 | |                             unit: num.unit.clone(),
[INFO] [stderr] 217 | |                         }))
[INFO] [stderr] 218 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 219 |                       "log" => func!(fn log(num: Number, base: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 220 | |                         if base.unit.len() > 0 {
[INFO] [stderr] 221 | |                             Err(format!(
[INFO] [stderr] 222 | |                                 "Base must be dimensionless"
[INFO] [stderr] ...   |
[INFO] [stderr] 230 | |                         }
[INFO] [stderr] 231 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 219 |                       "log" => func!(fn log(num: Number, base: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 220 | |                         if base.unit.len() > 0 {
[INFO] [stderr] 221 | |                             Err(format!(
[INFO] [stderr] 222 | |                                 "Base must be dimensionless"
[INFO] [stderr] ...   |
[INFO] [stderr] 230 | |                         }
[INFO] [stderr] 231 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 232 |                       "log2" => func!(fn log2(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 233 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 234 | |                             value: Num::Float(num.value.to_f64().log2()),
[INFO] [stderr] 235 | |                             unit: num.unit.clone(),
[INFO] [stderr] 236 | |                         }))
[INFO] [stderr] 237 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 232 |                       "log2" => func!(fn log2(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 233 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 234 | |                             value: Num::Float(num.value.to_f64().log2()),
[INFO] [stderr] 235 | |                             unit: num.unit.clone(),
[INFO] [stderr] 236 | |                         }))
[INFO] [stderr] 237 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 238 |                       "log10" => func!(fn ln(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 239 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 240 | |                             value: Num::Float(num.value.to_f64().log10()),
[INFO] [stderr] 241 | |                             unit: num.unit.clone(),
[INFO] [stderr] 242 | |                         }))
[INFO] [stderr] 243 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 238 |                       "log10" => func!(fn ln(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 239 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 240 | |                             value: Num::Float(num.value.to_f64().log10()),
[INFO] [stderr] 241 | |                             unit: num.unit.clone(),
[INFO] [stderr] 242 | |                         }))
[INFO] [stderr] 243 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 244 |                       "hypot" => func!(fn hypot(x: Number, y: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 245 | |                         if x.unit != y.unit {
[INFO] [stderr] 246 | |                             Err(format!(
[INFO] [stderr] 247 | |                                 "Arguments to hypot must have matching \
[INFO] [stderr] ...   |
[INFO] [stderr] 255 | |                         }
[INFO] [stderr] 256 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 244 |                       "hypot" => func!(fn hypot(x: Number, y: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 245 | |                         if x.unit != y.unit {
[INFO] [stderr] 246 | |                             Err(format!(
[INFO] [stderr] 247 | |                                 "Arguments to hypot must have matching \
[INFO] [stderr] ...   |
[INFO] [stderr] 255 | |                         }
[INFO] [stderr] 256 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 257 |                       "sin" => func!(fn sin(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 258 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 259 | |                             value: Num::Float(num.value.to_f64().sin()),
[INFO] [stderr] 260 | |                             unit: num.unit.clone(),
[INFO] [stderr] 261 | |                         }))
[INFO] [stderr] 262 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 257 |                       "sin" => func!(fn sin(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 258 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 259 | |                             value: Num::Float(num.value.to_f64().sin()),
[INFO] [stderr] 260 | |                             unit: num.unit.clone(),
[INFO] [stderr] 261 | |                         }))
[INFO] [stderr] 262 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 263 |                       "cos" => func!(fn cos(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 264 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 265 | |                             value: Num::Float(num.value.to_f64().cos()),
[INFO] [stderr] 266 | |                             unit: num.unit.clone(),
[INFO] [stderr] 267 | |                         }))
[INFO] [stderr] 268 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 263 |                       "cos" => func!(fn cos(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 264 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 265 | |                             value: Num::Float(num.value.to_f64().cos()),
[INFO] [stderr] 266 | |                             unit: num.unit.clone(),
[INFO] [stderr] 267 | |                         }))
[INFO] [stderr] 268 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 269 |                       "tan" => func!(fn tan(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 270 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 271 | |                             value: Num::Float(num.value.to_f64().tan()),
[INFO] [stderr] 272 | |                             unit: num.unit.clone(),
[INFO] [stderr] 273 | |                         }))
[INFO] [stderr] 274 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 269 |                       "tan" => func!(fn tan(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 270 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 271 | |                             value: Num::Float(num.value.to_f64().tan()),
[INFO] [stderr] 272 | |                             unit: num.unit.clone(),
[INFO] [stderr] 273 | |                         }))
[INFO] [stderr] 274 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 275 |                       "asin" => func!(fn asin(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 276 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 277 | |                             value: Num::Float(num.value.to_f64().asin()),
[INFO] [stderr] 278 | |                             unit: num.unit.clone(),
[INFO] [stderr] 279 | |                         }))
[INFO] [stderr] 280 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 275 |                       "asin" => func!(fn asin(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 276 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 277 | |                             value: Num::Float(num.value.to_f64().asin()),
[INFO] [stderr] 278 | |                             unit: num.unit.clone(),
[INFO] [stderr] 279 | |                         }))
[INFO] [stderr] 280 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 281 |                       "acos" => func!(fn acos(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 282 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 283 | |                             value: Num::Float(num.value.to_f64().acos()),
[INFO] [stderr] 284 | |                             unit: num.unit.clone(),
[INFO] [stderr] 285 | |                         }))
[INFO] [stderr] 286 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 281 |                       "acos" => func!(fn acos(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 282 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 283 | |                             value: Num::Float(num.value.to_f64().acos()),
[INFO] [stderr] 284 | |                             unit: num.unit.clone(),
[INFO] [stderr] 285 | |                         }))
[INFO] [stderr] 286 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 287 |                       "atan" => func!(fn atan(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 288 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 289 | |                             value: Num::Float(num.value.to_f64().atan()),
[INFO] [stderr] 290 | |                             unit: num.unit.clone(),
[INFO] [stderr] 291 | |                         }))
[INFO] [stderr] 292 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 287 |                       "atan" => func!(fn atan(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 288 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 289 | |                             value: Num::Float(num.value.to_f64().atan()),
[INFO] [stderr] 290 | |                             unit: num.unit.clone(),
[INFO] [stderr] 291 | |                         }))
[INFO] [stderr] 292 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 293 |                       "atan2" => func!(fn atan2(x: Number, y: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 294 | |                         if x.unit != y.unit {
[INFO] [stderr] 295 | |                             Err(format!(
[INFO] [stderr] 296 | |                                 "Arguments to atan2 must have matching \
[INFO] [stderr] ...   |
[INFO] [stderr] 305 | |                         }
[INFO] [stderr] 306 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 293 |                       "atan2" => func!(fn atan2(x: Number, y: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 294 | |                         if x.unit != y.unit {
[INFO] [stderr] 295 | |                             Err(format!(
[INFO] [stderr] 296 | |                                 "Arguments to atan2 must have matching \
[INFO] [stderr] ...   |
[INFO] [stderr] 305 | |                         }
[INFO] [stderr] 306 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 307 |                       "sinh" => func!(fn sinh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 308 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 309 | |                             value: Num::Float(num.value.to_f64().sinh()),
[INFO] [stderr] 310 | |                             unit: num.unit.clone(),
[INFO] [stderr] 311 | |                         }))
[INFO] [stderr] 312 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 307 |                       "sinh" => func!(fn sinh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 308 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 309 | |                             value: Num::Float(num.value.to_f64().sinh()),
[INFO] [stderr] 310 | |                             unit: num.unit.clone(),
[INFO] [stderr] 311 | |                         }))
[INFO] [stderr] 312 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 313 |                       "cosh" => func!(fn cosh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 314 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 315 | |                             value: Num::Float(num.value.to_f64().cosh()),
[INFO] [stderr] 316 | |                             unit: num.unit.clone(),
[INFO] [stderr] 317 | |                         }))
[INFO] [stderr] 318 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 313 |                       "cosh" => func!(fn cosh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 314 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 315 | |                             value: Num::Float(num.value.to_f64().cosh()),
[INFO] [stderr] 316 | |                             unit: num.unit.clone(),
[INFO] [stderr] 317 | |                         }))
[INFO] [stderr] 318 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 319 |                       "tanh" => func!(fn tanh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 320 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 321 | |                             value: Num::Float(num.value.to_f64().tanh()),
[INFO] [stderr] 322 | |                             unit: num.unit.clone(),
[INFO] [stderr] 323 | |                         }))
[INFO] [stderr] 324 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 319 |                       "tanh" => func!(fn tanh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 320 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 321 | |                             value: Num::Float(num.value.to_f64().tanh()),
[INFO] [stderr] 322 | |                             unit: num.unit.clone(),
[INFO] [stderr] 323 | |                         }))
[INFO] [stderr] 324 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 325 |                       "asinh" => func!(fn asinh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 326 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 327 | |                             value: Num::Float(num.value.to_f64().asinh()),
[INFO] [stderr] 328 | |                             unit: num.unit.clone(),
[INFO] [stderr] 329 | |                         }))
[INFO] [stderr] 330 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 325 |                       "asinh" => func!(fn asinh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 326 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 327 | |                             value: Num::Float(num.value.to_f64().asinh()),
[INFO] [stderr] 328 | |                             unit: num.unit.clone(),
[INFO] [stderr] 329 | |                         }))
[INFO] [stderr] 330 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 331 |                       "acosh" => func!(fn acosh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 332 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 333 | |                             value: Num::Float(num.value.to_f64().acosh()),
[INFO] [stderr] 334 | |                             unit: num.unit.clone(),
[INFO] [stderr] 335 | |                         }))
[INFO] [stderr] 336 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 331 |                       "acosh" => func!(fn acosh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 332 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 333 | |                             value: Num::Float(num.value.to_f64().acosh()),
[INFO] [stderr] 334 | |                             unit: num.unit.clone(),
[INFO] [stderr] 335 | |                         }))
[INFO] [stderr] 336 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 337 |                       "atanh" => func!(fn atanh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 338 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 339 | |                             value: Num::Float(num.value.to_f64().atanh()),
[INFO] [stderr] 340 | |                             unit: num.unit.clone(),
[INFO] [stderr] 341 | |                         }))
[INFO] [stderr] 342 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 337 |                       "atanh" => func!(fn atanh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 338 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 339 | |                             value: Num::Float(num.value.to_f64().atanh()),
[INFO] [stderr] 340 | |                             unit: num.unit.clone(),
[INFO] [stderr] 341 | |                         }))
[INFO] [stderr] 342 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead.
[INFO] [stderr]   --> src/lib.rs:95:13
[INFO] [stderr]    |
[INFO] [stderr] 95 |             env::home_dir()
[INFO] [stderr]    |             ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 96 |             Expr::Frac(ref left, ref right) => operator!(left div / right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:32:29
[INFO] [stderr]    |
[INFO] [stderr] 32 |                 let right = try!(self.eval(&**$right));
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] ...
[INFO] [stderr] 96 |             Expr::Frac(ref left, ref right) => operator!(left div / right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 97 |             Expr::Add(ref left, ref right)  => operator!(left add + right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:32:29
[INFO] [stderr]    |
[INFO] [stderr] 32 |                 let right = try!(self.eval(&**$right));
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] ...
[INFO] [stderr] 97 |             Expr::Add(ref left, ref right)  => operator!(left add + right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 98 |             Expr::Sub(ref left, ref right)  => operator!(left sub - right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:32:29
[INFO] [stderr]    |
[INFO] [stderr] 32 |                 let right = try!(self.eval(&**$right));
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] ...
[INFO] [stderr] 98 |             Expr::Sub(ref left, ref right)  => operator!(left sub - right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 99 |             Expr::Pow(ref left, ref right)  => operator!(left pow ^ right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/eval.rs:32:29
[INFO] [stderr]    |
[INFO] [stderr] 32 |                 let right = try!(self.eval(&**$right));
[INFO] [stderr]    |                             ^^^
[INFO] [stderr] ...
[INFO] [stderr] 99 |             Expr::Pow(ref left, ref right)  => operator!(left pow ^ right),
[INFO] [stderr]    |                                                --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 102 |                 temperature!(left, "C", "zerocelsius", "kelvin"),
[INFO] [stderr]     |                 ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 104 |                 temperature!(left, "F", "zerofahrenheit", "degrankine"),
[INFO] [stderr]     |                 ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 106 |                 temperature!(left, "Ré", "zerocelsius", "reaumur_absolute"),
[INFO] [stderr]     |                 ----------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 108 |                 temperature!(left, "Rø", "zeroromer", "romer_absolute"),
[INFO] [stderr]     |                 ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 110 |                 temperature!(left, "De", "zerodelisle", "delisle_absolute"),
[INFO] [stderr]     |                 ----------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:46:28
[INFO] [stderr]     |
[INFO] [stderr] 46  |                 let left = try!(self.eval(&**$left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 112 |                 temperature!(left, "N", "zerocelsius", "newton_absolute"),
[INFO] [stderr]     |                 --------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:116:29
[INFO] [stderr]     |
[INFO] [stderr] 116 |                     let b = try!(self.eval(b));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:134:27
[INFO] [stderr]     |
[INFO] [stderr] 134 |                 let val = try!(self.eval(val));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:154:28
[INFO] [stderr]     |
[INFO] [stderr] 154 |                 let args = try!(
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:376:34
[INFO] [stderr]     |
[INFO] [stderr] 376 |                 let (left, lv) = try!(self.eval_unit_name(left));
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:377:35
[INFO] [stderr]     |
[INFO] [stderr] 377 |                 let (right, rv) = try!(self.eval_unit_name(right));
[INFO] [stderr]     |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:388:37
[INFO] [stderr]     |
[INFO] [stderr] 388 |                     let (acc, av) = try!(acc);
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:389:35
[INFO] [stderr]     |
[INFO] [stderr] 389 |                     let (b, bv) = try!(self.eval_unit_name(b));
[INFO] [stderr]     |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:398:27
[INFO] [stderr]     |
[INFO] [stderr] 398 |                 let res = try!(self.eval(exp));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:411:34
[INFO] [stderr]     |
[INFO] [stderr] 411 |                 let (left, lv) = try!(self.eval_unit_name(left));
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:425:27
[INFO] [stderr]     |
[INFO] [stderr] 425 |                 let res = try!(self.eval(expr));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:448:28
[INFO] [stderr]     |
[INFO] [stderr] 448 |                 let left = try!(self.eval_unit_name(left));
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:449:29
[INFO] [stderr]     |
[INFO] [stderr] 449 |                 let right = try!(self.eval_unit_name(right));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:540:21
[INFO] [stderr]     |
[INFO] [stderr] 540 |         let units = try!(list.iter().map(|x| {
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:544:25
[INFO] [stderr]     |
[INFO] [stderr] 544 |             let first = try!(units.first().ok_or(
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:546:13
[INFO] [stderr]     |
[INFO] [stderr] 546 |             try!(units.iter().skip(1).map(|x| {
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:666:27
[INFO] [stderr]     |
[INFO] [stderr] 666 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:684:27
[INFO] [stderr]     |
[INFO] [stderr] 684 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:774:27
[INFO] [stderr]     |
[INFO] [stderr] 774 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:798:27
[INFO] [stderr]     |
[INFO] [stderr] 798 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:808:27
[INFO] [stderr]     |
[INFO] [stderr] 808 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:823:27
[INFO] [stderr]     |
[INFO] [stderr] 823 |                 let top = try!(self.eval(top));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:894:35
[INFO] [stderr]     |
[INFO] [stderr] 894 |                         let val = try!(self.eval(expr));
[INFO] [stderr]     |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:936:35
[INFO] [stderr]     |
[INFO] [stderr] 936 |                         let val = try!(self.eval(expr));
[INFO] [stderr]     |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/eval.rs:1035:27
[INFO] [stderr]      |
[INFO] [stderr] 1035 |                 let val = try!(self.eval(expr));
[INFO] [stderr]      |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/eval.rs:1039:36
[INFO] [stderr]      |
[INFO] [stderr] 1039 |                         let list = try!(self.to_list(&n, units));
[INFO] [stderr]      |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/eval.rs:1068:25
[INFO] [stderr]      |
[INFO] [stderr] 1068 |                         try!(s.to_reply(self).map_err(QueryError::Generic))
[INFO] [stderr]      |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/date.rs:291:5
[INFO] [stderr]     |
[INFO] [stderr] 291 |     try!(res.map_err(|e| (e, count)));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/date.rs:396:49
[INFO] [stderr]     |
[INFO] [stderr] 396 |                 let res = DatePattern::Optional(try!(parse_datepattern(iter)));
[INFO] [stderr]     |                                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:205:25
[INFO] [stderr]     |
[INFO] [stderr] 205 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:208:25
[INFO] [stderr]     |
[INFO] [stderr] 208 |                         try!(recurse(first, fmt, Prec::Pow));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:211:25
[INFO] [stderr]     |
[INFO] [stderr] 211 |                         try!(write!(fmt, " "));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:212:25
[INFO] [stderr]     |
[INFO] [stderr] 212 |                         try!(recurse(expr, fmt, Prec::Pow));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:215:25
[INFO] [stderr]     |
[INFO] [stderr] 215 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:220:21
[INFO] [stderr]     |
[INFO] [stderr] 220 |                     try!(write!(fmt, "{}(", name));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:222:25
[INFO] [stderr]     |
[INFO] [stderr] 222 |                         try!(recurse(first, fmt, Prec::Equals));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:225:25
[INFO] [stderr]     |
[INFO] [stderr] 225 |                         try!(write!(fmt, ", "));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:226:25
[INFO] [stderr]     |
[INFO] [stderr] 226 |                         try!(recurse(arg, fmt, Prec::Equals));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |                 Expr::Pow(ref left, ref right) => binop!(left, right, Prec::Pow, Prec::Term, "^"),
[INFO] [stderr]     |                                                   ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |                 Expr::Frac(ref left, ref right) => binop!(left, right, Prec::Div, Prec::Mul, " / "),
[INFO] [stderr]     |                                                    ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 232 |                 Expr::Add(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " + "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |                 Expr::Sub(ref left, ref right) => binop!(left, right, Prec::Add, Prec::Div, " - "),
[INFO] [stderr]     |                                                   ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:235:21
[INFO] [stderr]     |
[INFO] [stderr] 235 |                     try!(write!(fmt, "+"));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:239:21
[INFO] [stderr]     |
[INFO] [stderr] 239 |                     try!(write!(fmt, "-"));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:186:21
[INFO] [stderr]     |
[INFO] [stderr] 186 |                     try!(recurse($left, fmt, $succ));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:187:21
[INFO] [stderr]     |
[INFO] [stderr] 187 |                     try!(write!(fmt, $sym));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:188:21
[INFO] [stderr]     |
[INFO] [stderr] 188 |                     try!(recurse($right, fmt, $prec));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:190:25
[INFO] [stderr]     |
[INFO] [stderr] 190 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 242 |                 Expr::Equals(ref left, ref right) => binop!(left, right, Prec::Equals, Prec::Add, " = "),
[INFO] [stderr]     |                                                      --------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:245:25
[INFO] [stderr]     |
[INFO] [stderr] 245 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:247:21
[INFO] [stderr]     |
[INFO] [stderr] 247 |                     try!(recurse(expr, fmt, Prec::Mul));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:248:21
[INFO] [stderr]     |
[INFO] [stderr] 248 |                     try!(write!(fmt, " {}", op));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:250:25
[INFO] [stderr]     |
[INFO] [stderr] 250 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:256:25
[INFO] [stderr]     |
[INFO] [stderr] 256 |                         try!(write!(fmt, "("));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:258:21
[INFO] [stderr]     |
[INFO] [stderr] 258 |                     try!(write!(fmt, "{} of ", field));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:259:21
[INFO] [stderr]     |
[INFO] [stderr] 259 |                     try!(recurse(expr, fmt, Prec::Div));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:261:25
[INFO] [stderr]     |
[INFO] [stderr] 261 |                         try!(write!(fmt, ")"));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:279:17
[INFO] [stderr]     |
[INFO] [stderr] 279 |                 try!(write!(fmt, "["));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ast.rs:281:21
[INFO] [stderr]     |
[INFO] [stderr] 281 |                     try!(p.fmt(fmt));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/value.rs:87:70
[INFO] [stderr]    |
[INFO] [stderr] 87 |                     GenericDateTime::Fixed(left) => left.checked_add(try!(date::to_duration(
[INFO] [stderr]    |                                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/value.rs:90:73
[INFO] [stderr]    |
[INFO] [stderr] 90 |                     GenericDateTime::Timezone(left) => left.checked_add(try!(date::to_duration(
[INFO] [stderr]    |                                                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/value.rs:116:70
[INFO] [stderr]     |
[INFO] [stderr] 116 |                     GenericDateTime::Fixed(left) => left.checked_sub(try!(date::to_duration(
[INFO] [stderr]     |                                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/value.rs:119:73
[INFO] [stderr]     |
[INFO] [stderr] 119 |                     GenericDateTime::Timezone(left) => left.checked_sub(try!(date::to_duration(
[INFO] [stderr]     |                                                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:318:9
[INFO] [stderr]     |
[INFO] [stderr] 318 |         try!(writeln!(fmt, "Conformance error: {} != {}", self.left, self.right));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:343:9
[INFO] [stderr]     |
[INFO] [stderr] 343 |         try!(write!(fmt, "{}", self.string));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:345:13
[INFO] [stderr]     |
[INFO] [stderr] 345 |             try!(write!(fmt, " ({})", human));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:371:9
[INFO] [stderr]     |
[INFO] [stderr] 371 |         try!(write!(fmt, "Definition: {}", self.canon_name));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:373:13
[INFO] [stderr]     |
[INFO] [stderr] 373 |             try!(write!(fmt, " = {}", def));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:376:13
[INFO] [stderr]     |
[INFO] [stderr] 376 |             try!(write!(fmt, " = {}", value.format("n u p")));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:379:13
[INFO] [stderr]     |
[INFO] [stderr] 379 |             try!(write!(fmt, ". {}", doc));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:432:9
[INFO] [stderr]     |
[INFO] [stderr] 432 |         try!(write!(fmt, "{}", res));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reply.rs:443:9
[INFO] [stderr]     |
[INFO] [stderr] 443 |         try!(write!(fmt, "{}",
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/substance.rs:66:33
[INFO] [stderr]    |
[INFO] [stderr] 66 |                     let input = try!(
[INFO] [stderr]    |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/substance.rs:71:35
[INFO] [stderr]    |
[INFO] [stderr] 71 |                         let res = try!((&prop.output / &input).ok_or_else(
[INFO] [stderr]    |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/substance.rs:80:34
[INFO] [stderr]    |
[INFO] [stderr] 80 |                     let output = try!(
[INFO] [stderr]    |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/substance.rs:85:35
[INFO] [stderr]    |
[INFO] [stderr] 85 |                         let res = try!((&prop.input / &output).ok_or_else(
[INFO] [stderr]    |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:117:29
[INFO] [stderr]     |
[INFO] [stderr] 117 |                 properties: try!(self.properties.properties.iter().map(|(k, v)| {
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:120:32
[INFO] [stderr]     |
[INFO] [stderr] 120 |                         (None, try!((&res / &v.input)
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:143:26
[INFO] [stderr]     |
[INFO] [stderr] 143 |                         &try!((
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:156:34
[INFO] [stderr]     |
[INFO] [stderr] 156 |                     let output = try!((
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:171:43
[INFO] [stderr]     |
[INFO] [stderr] 171 | ...                   let mut res = try!((
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:193:29
[INFO] [stderr]     |
[INFO] [stderr] 193 |                 let input = try!((&v.input / &self.amount).ok_or_else(|| format!(
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:198:30
[INFO] [stderr]     |
[INFO] [stderr] 198 |                 let output = try!((&v.output / &self.amount).ok_or_else(|| format!(
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:207:31
[INFO] [stderr]     |
[INFO] [stderr] 207 |                     let div = try!(
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:219:31
[INFO] [stderr]     |
[INFO] [stderr] 219 |                     let div = try!(
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:231:22
[INFO] [stderr]     |
[INFO] [stderr] 231 |                     &try!((
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:244:30
[INFO] [stderr]     |
[INFO] [stderr] 244 |                 let output = try!((
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:259:39
[INFO] [stderr]     |
[INFO] [stderr] 259 |                         let mut res = try!((
[INFO] [stderr]     |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:286:29
[INFO] [stderr]     |
[INFO] [stderr] 286 |                 properties: try!(
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:303:29
[INFO] [stderr]     |
[INFO] [stderr] 303 |                 properties: try!(self.properties.properties.iter().map(|(k, v)| {
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:306:32
[INFO] [stderr]     |
[INFO] [stderr] 306 |                         (None, try!((&res / &v.input)
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:320:43
[INFO] [stderr]     |
[INFO] [stderr] 320 | ...                   let mut res = try!((
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:340:29
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 let input = try!((&v.input / &self.amount).ok_or_else(|| format!(
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:345:30
[INFO] [stderr]     |
[INFO] [stderr] 345 |                 let output = try!((&v.output / &self.amount).ok_or_else(|| format!(
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:351:31
[INFO] [stderr]     |
[INFO] [stderr] 351 |                     let div = try!(
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:360:31
[INFO] [stderr]     |
[INFO] [stderr] 360 |                     let div = try!(
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:377:39
[INFO] [stderr]     |
[INFO] [stderr] 377 |                         let mut res = try!((
[INFO] [stderr]     |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:404:29
[INFO] [stderr]     |
[INFO] [stderr] 404 |                 properties: try!(
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:427:21
[INFO] [stderr]     |
[INFO] [stderr] 427 |             amount: try!((&self.amount * other).ok_or_else(
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/substance.rs:439:21
[INFO] [stderr]     |
[INFO] [stderr] 439 |             amount: try!((&self.amount / other).ok_or_else(
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/btc.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     try!(f.read_to_string(&mut buf).map_err(|x| format!("{}", x)));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/btc.rs:17:18
[INFO] [stderr]    |
[INFO] [stderr] 17 |     let parsed = try!(json::parse(&*buf).map_err(|x| format!("{}", x)));
[INFO] [stderr]    |                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:155:20
[INFO] [stderr]     |
[INFO] [stderr] 155 |     let mut path = try!(config_dir());
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:161:13
[INFO] [stderr]     |
[INFO] [stderr] 161 |             try!(f.read_to_end(&mut buf));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:178:17
[INFO] [stderr]     |
[INFO] [stderr] 178 |     let units = try!(units);
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:374:20
[INFO] [stderr]     |
[INFO] [stderr] 374 |     let mut path = try!(config_dir());
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:384:25
[INFO] [stderr]     |
[INFO] [stderr] 384 |             let stats = try!(f.metadata().map_err(ts));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:385:25
[INFO] [stderr]     |
[INFO] [stderr] 385 |             let mtime = try!(stats.modified().map_err(ts));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:387:27
[INFO] [stderr]     |
[INFO] [stderr] 387 |             let elapsed = try!(now.duration_since(mtime).map_err(ts));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:395:13
[INFO] [stderr]     |
[INFO] [stderr] 395 |             try!(fs::create_dir_all(path.parent().unwrap()).map_err(|x| format!("{}", x)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:396:25
[INFO] [stderr]     |
[INFO] [stderr] 396 |             let mut f = try!(File::create(tmppath.clone()).map_err(|x| format!("{}", x)));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:402:13
[INFO] [stderr]     |
[INFO] [stderr] 402 |             try!(f.sync_all().map_err(|x| format!("{}", x)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:404:13
[INFO] [stderr]     |
[INFO] [stderr] 404 |             try!(fs::rename(tmppath.clone(), path.clone())
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 204 |                       "sqrt" => func!(fn sqrt(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 205 | |                         num.root(2).map(Value::Number)
[INFO] [stderr] 206 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 204 |                       "sqrt" => func!(fn sqrt(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 205 | |                         num.root(2).map(Value::Number)
[INFO] [stderr] 206 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 207 |                       "exp" => func!(fn exp(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 208 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 209 | |                             value: Num::Float(num.value.to_f64().exp()),
[INFO] [stderr] 210 | |                             unit: num.unit.clone(),
[INFO] [stderr] 211 | |                         }))
[INFO] [stderr] 212 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 207 |                       "exp" => func!(fn exp(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 208 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 209 | |                             value: Num::Float(num.value.to_f64().exp()),
[INFO] [stderr] 210 | |                             unit: num.unit.clone(),
[INFO] [stderr] 211 | |                         }))
[INFO] [stderr] 212 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 213 |                       "ln" => func!(fn ln(num: Number) {
[INFO] [stderr]     |  _____________________________-
[INFO] [stderr] 214 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 215 | |                             value: Num::Float(num.value.to_f64().ln()),
[INFO] [stderr] 216 | |                             unit: num.unit.clone(),
[INFO] [stderr] 217 | |                         }))
[INFO] [stderr] 218 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 213 |                       "ln" => func!(fn ln(num: Number) {
[INFO] [stderr]     |  _____________________________-
[INFO] [stderr] 214 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 215 | |                             value: Num::Float(num.value.to_f64().ln()),
[INFO] [stderr] 216 | |                             unit: num.unit.clone(),
[INFO] [stderr] 217 | |                         }))
[INFO] [stderr] 218 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 219 |                       "log" => func!(fn log(num: Number, base: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 220 | |                         if base.unit.len() > 0 {
[INFO] [stderr] 221 | |                             Err(format!(
[INFO] [stderr] 222 | |                                 "Base must be dimensionless"
[INFO] [stderr] ...   |
[INFO] [stderr] 230 | |                         }
[INFO] [stderr] 231 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 219 |                       "log" => func!(fn log(num: Number, base: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 220 | |                         if base.unit.len() > 0 {
[INFO] [stderr] 221 | |                             Err(format!(
[INFO] [stderr] 222 | |                                 "Base must be dimensionless"
[INFO] [stderr] ...   |
[INFO] [stderr] 230 | |                         }
[INFO] [stderr] 231 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 232 |                       "log2" => func!(fn log2(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 233 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 234 | |                             value: Num::Float(num.value.to_f64().log2()),
[INFO] [stderr] 235 | |                             unit: num.unit.clone(),
[INFO] [stderr] 236 | |                         }))
[INFO] [stderr] 237 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 232 |                       "log2" => func!(fn log2(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 233 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 234 | |                             value: Num::Float(num.value.to_f64().log2()),
[INFO] [stderr] 235 | |                             unit: num.unit.clone(),
[INFO] [stderr] 236 | |                         }))
[INFO] [stderr] 237 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 238 |                       "log10" => func!(fn ln(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 239 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 240 | |                             value: Num::Float(num.value.to_f64().log10()),
[INFO] [stderr] 241 | |                             unit: num.unit.clone(),
[INFO] [stderr] 242 | |                         }))
[INFO] [stderr] 243 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 238 |                       "log10" => func!(fn ln(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 239 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 240 | |                             value: Num::Float(num.value.to_f64().log10()),
[INFO] [stderr] 241 | |                             unit: num.unit.clone(),
[INFO] [stderr] 242 | |                         }))
[INFO] [stderr] 243 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 244 |                       "hypot" => func!(fn hypot(x: Number, y: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 245 | |                         if x.unit != y.unit {
[INFO] [stderr] 246 | |                             Err(format!(
[INFO] [stderr] 247 | |                                 "Arguments to hypot must have matching \
[INFO] [stderr] ...   |
[INFO] [stderr] 255 | |                         }
[INFO] [stderr] 256 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 244 |                       "hypot" => func!(fn hypot(x: Number, y: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 245 | |                         if x.unit != y.unit {
[INFO] [stderr] 246 | |                             Err(format!(
[INFO] [stderr] 247 | |                                 "Arguments to hypot must have matching \
[INFO] [stderr] ...   |
[INFO] [stderr] 255 | |                         }
[INFO] [stderr] 256 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 257 |                       "sin" => func!(fn sin(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 258 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 259 | |                             value: Num::Float(num.value.to_f64().sin()),
[INFO] [stderr] 260 | |                             unit: num.unit.clone(),
[INFO] [stderr] 261 | |                         }))
[INFO] [stderr] 262 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 257 |                       "sin" => func!(fn sin(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 258 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 259 | |                             value: Num::Float(num.value.to_f64().sin()),
[INFO] [stderr] 260 | |                             unit: num.unit.clone(),
[INFO] [stderr] 261 | |                         }))
[INFO] [stderr] 262 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 263 |                       "cos" => func!(fn cos(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 264 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 265 | |                             value: Num::Float(num.value.to_f64().cos()),
[INFO] [stderr] 266 | |                             unit: num.unit.clone(),
[INFO] [stderr] 267 | |                         }))
[INFO] [stderr] 268 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 263 |                       "cos" => func!(fn cos(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 264 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 265 | |                             value: Num::Float(num.value.to_f64().cos()),
[INFO] [stderr] 266 | |                             unit: num.unit.clone(),
[INFO] [stderr] 267 | |                         }))
[INFO] [stderr] 268 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 269 |                       "tan" => func!(fn tan(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 270 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 271 | |                             value: Num::Float(num.value.to_f64().tan()),
[INFO] [stderr] 272 | |                             unit: num.unit.clone(),
[INFO] [stderr] 273 | |                         }))
[INFO] [stderr] 274 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 269 |                       "tan" => func!(fn tan(num: Number) {
[INFO] [stderr]     |  ______________________________-
[INFO] [stderr] 270 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 271 | |                             value: Num::Float(num.value.to_f64().tan()),
[INFO] [stderr] 272 | |                             unit: num.unit.clone(),
[INFO] [stderr] 273 | |                         }))
[INFO] [stderr] 274 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 275 |                       "asin" => func!(fn asin(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 276 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 277 | |                             value: Num::Float(num.value.to_f64().asin()),
[INFO] [stderr] 278 | |                             unit: num.unit.clone(),
[INFO] [stderr] 279 | |                         }))
[INFO] [stderr] 280 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 275 |                       "asin" => func!(fn asin(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 276 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 277 | |                             value: Num::Float(num.value.to_f64().asin()),
[INFO] [stderr] 278 | |                             unit: num.unit.clone(),
[INFO] [stderr] 279 | |                         }))
[INFO] [stderr] 280 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 281 |                       "acos" => func!(fn acos(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 282 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 283 | |                             value: Num::Float(num.value.to_f64().acos()),
[INFO] [stderr] 284 | |                             unit: num.unit.clone(),
[INFO] [stderr] 285 | |                         }))
[INFO] [stderr] 286 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 281 |                       "acos" => func!(fn acos(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 282 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 283 | |                             value: Num::Float(num.value.to_f64().acos()),
[INFO] [stderr] 284 | |                             unit: num.unit.clone(),
[INFO] [stderr] 285 | |                         }))
[INFO] [stderr] 286 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 287 |                       "atan" => func!(fn atan(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 288 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 289 | |                             value: Num::Float(num.value.to_f64().atan()),
[INFO] [stderr] 290 | |                             unit: num.unit.clone(),
[INFO] [stderr] 291 | |                         }))
[INFO] [stderr] 292 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 287 |                       "atan" => func!(fn atan(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 288 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 289 | |                             value: Num::Float(num.value.to_f64().atan()),
[INFO] [stderr] 290 | |                             unit: num.unit.clone(),
[INFO] [stderr] 291 | |                         }))
[INFO] [stderr] 292 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 293 |                       "atan2" => func!(fn atan2(x: Number, y: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 294 | |                         if x.unit != y.unit {
[INFO] [stderr] 295 | |                             Err(format!(
[INFO] [stderr] 296 | |                                 "Arguments to atan2 must have matching \
[INFO] [stderr] ...   |
[INFO] [stderr] 305 | |                         }
[INFO] [stderr] 306 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 293 |                       "atan2" => func!(fn atan2(x: Number, y: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 294 | |                         if x.unit != y.unit {
[INFO] [stderr] 295 | |                             Err(format!(
[INFO] [stderr] 296 | |                                 "Arguments to atan2 must have matching \
[INFO] [stderr] ...   |
[INFO] [stderr] 305 | |                         }
[INFO] [stderr] 306 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 307 |                       "sinh" => func!(fn sinh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 308 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 309 | |                             value: Num::Float(num.value.to_f64().sinh()),
[INFO] [stderr] 310 | |                             unit: num.unit.clone(),
[INFO] [stderr] 311 | |                         }))
[INFO] [stderr] 312 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 307 |                       "sinh" => func!(fn sinh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 308 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 309 | |                             value: Num::Float(num.value.to_f64().sinh()),
[INFO] [stderr] 310 | |                             unit: num.unit.clone(),
[INFO] [stderr] 311 | |                         }))
[INFO] [stderr] 312 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 313 |                       "cosh" => func!(fn cosh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 314 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 315 | |                             value: Num::Float(num.value.to_f64().cosh()),
[INFO] [stderr] 316 | |                             unit: num.unit.clone(),
[INFO] [stderr] 317 | |                         }))
[INFO] [stderr] 318 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 313 |                       "cosh" => func!(fn cosh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 314 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 315 | |                             value: Num::Float(num.value.to_f64().cosh()),
[INFO] [stderr] 316 | |                             unit: num.unit.clone(),
[INFO] [stderr] 317 | |                         }))
[INFO] [stderr] 318 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 319 |                       "tanh" => func!(fn tanh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 320 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 321 | |                             value: Num::Float(num.value.to_f64().tanh()),
[INFO] [stderr] 322 | |                             unit: num.unit.clone(),
[INFO] [stderr] 323 | |                         }))
[INFO] [stderr] 324 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 319 |                       "tanh" => func!(fn tanh(num: Number) {
[INFO] [stderr]     |  _______________________________-
[INFO] [stderr] 320 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 321 | |                             value: Num::Float(num.value.to_f64().tanh()),
[INFO] [stderr] 322 | |                             unit: num.unit.clone(),
[INFO] [stderr] 323 | |                         }))
[INFO] [stderr] 324 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 325 |                       "asinh" => func!(fn asinh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 326 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 327 | |                             value: Num::Float(num.value.to_f64().asinh()),
[INFO] [stderr] 328 | |                             unit: num.unit.clone(),
[INFO] [stderr] 329 | |                         }))
[INFO] [stderr] 330 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 325 |                       "asinh" => func!(fn asinh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 326 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 327 | |                             value: Num::Float(num.value.to_f64().asinh()),
[INFO] [stderr] 328 | |                             unit: num.unit.clone(),
[INFO] [stderr] 329 | |                         }))
[INFO] [stderr] 330 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 331 |                       "acosh" => func!(fn acosh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 332 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 333 | |                             value: Num::Float(num.value.to_f64().acosh()),
[INFO] [stderr] 334 | |                             unit: num.unit.clone(),
[INFO] [stderr] 335 | |                         }))
[INFO] [stderr] 336 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 331 |                       "acosh" => func!(fn acosh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 332 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 333 | |                             value: Num::Float(num.value.to_f64().acosh()),
[INFO] [stderr] 334 | |                             unit: num.unit.clone(),
[INFO] [stderr] 335 | |                         }))
[INFO] [stderr] 336 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:163:69
[INFO] [stderr]     |
[INFO] [stderr] 163 |                           $( count += 1; let _ = stringify!($name); )*;
[INFO] [stderr]     |                                                                       ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 337 |                       "atanh" => func!(fn atanh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 338 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 339 | |                             value: Num::Float(num.value.to_f64().atanh()),
[INFO] [stderr] 340 | |                             unit: num.unit.clone(),
[INFO] [stderr] 341 | |                         }))
[INFO] [stderr] 342 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/eval.rs:179:27
[INFO] [stderr]     |
[INFO] [stderr] 179 |                           )*;
[INFO] [stderr]     |                             ^ help: remove this semicolon
[INFO] [stderr] ...
[INFO] [stderr] 337 |                       "atanh" => func!(fn atanh(num: Number) {
[INFO] [stderr]     |  ________________________________-
[INFO] [stderr] 338 | |                         Ok(Value::Number(Number {
[INFO] [stderr] 339 | |                             value: Num::Float(num.value.to_f64().atanh()),
[INFO] [stderr] 340 | |                             unit: num.unit.clone(),
[INFO] [stderr] 341 | |                         }))
[INFO] [stderr] 342 | |                     }),
[INFO] [stderr]     | |______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead.
[INFO] [stderr]   --> src/lib.rs:95:13
[INFO] [stderr]    |
[INFO] [stderr] 95 |             env::home_dir()
[INFO] [stderr]    |             ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added.
[INFO] [stderr]    --> src/date.rs:676:14
[INFO] [stderr]     |
[INFO] [stderr] 676 |             .into_iter()
[INFO] [stderr]     |              ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 16s
[INFO] running `"docker" "inspect" "88a61553b6e2bb4e64a7e3cd49fc63bcaae44bc67803b55b2f4e7ab76b594272"`
[INFO] running `"docker" "rm" "-f" "88a61553b6e2bb4e64a7e3cd49fc63bcaae44bc67803b55b2f4e7ab76b594272"`
[INFO] [stdout] 88a61553b6e2bb4e64a7e3cd49fc63bcaae44bc67803b55b2f4e7ab76b594272
