[INFO] cloning repository https://github.com/LokiSharp/rua
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/LokiSharp/rua" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLokiSharp%2Frua", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLokiSharp%2Frua'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6bdac123e2c3aa9660dd1afa359e14d5e14aa4c4
[INFO] checking LokiSharp/rua against try#e983148bd5f0f0db270bfb72149f5e892e68b67f for pr-150322
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLokiSharp%2Frua" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/LokiSharp/rua
[INFO] finished tweaking git repo https://github.com/LokiSharp/rua
[INFO] tweaked toml for git repo https://github.com/LokiSharp/rua written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/LokiSharp/rua on toolchain e983148bd5f0f0db270bfb72149f5e892e68b67f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e983148bd5f0f0db270bfb72149f5e892e68b67f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/LokiSharp/rua already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e983148bd5f0f0db270bfb72149f5e892e68b67f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+e983148bd5f0f0db270bfb72149f5e892e68b67f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 71379a2c61bdca4e1ed61b2a295f5da03070ce5fa29fb293729622bfa2544eee
[INFO] running `Command { std: "docker" "start" "-a" "71379a2c61bdca4e1ed61b2a295f5da03070ce5fa29fb293729622bfa2544eee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "71379a2c61bdca4e1ed61b2a295f5da03070ce5fa29fb293729622bfa2544eee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "71379a2c61bdca4e1ed61b2a295f5da03070ce5fa29fb293729622bfa2544eee", kill_on_drop: false }`
[INFO] [stdout] 71379a2c61bdca4e1ed61b2a295f5da03070ce5fa29fb293729622bfa2544eee
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+e983148bd5f0f0db270bfb72149f5e892e68b67f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9efe499873741e6fe0502739ef11529968a7d200200a42ab6a9a9ef29eeb2a49
[INFO] running `Command { std: "docker" "start" "-a" "9efe499873741e6fe0502739ef11529968a7d200200a42ab6a9a9ef29eeb2a49", kill_on_drop: false }`
[INFO] [stderr]     Checking rua v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: constant `LUA_TUPVAL` is never used
[INFO] [stdout]   --> src/api/consts.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const LUA_TUPVAL: i8 = LUA_NUMTYPES;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_OPEQ` is never used
[INFO] [stdout]   --> src/api/consts.rs:37:11
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub const LUA_OPEQ: u8 = 0; // ==
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_OPLT` is never used
[INFO] [stdout]   --> src/api/consts.rs:38:11
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub const LUA_OPLT: u8 = 1; // <
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_OPLE` is never used
[INFO] [stdout]   --> src/api/consts.rs:39:11
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub const LUA_OPLE: u8 = 2; // <=
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_OPGT` is never used
[INFO] [stdout]   --> src/api/consts.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub const LUA_OPGT: u8 = 3; // >
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_OPGE` is never used
[INFO] [stdout]   --> src/api/consts.rs:41:11
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub const LUA_OPGE: u8 = 4; // >=
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_MINSTACK` is never used
[INFO] [stdout]   --> src/api/consts.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub const LUA_MINSTACK: usize = 20;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUAI_MAXSTACK` is never used
[INFO] [stdout]   --> src/api/consts.rs:45:11
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub const LUAI_MAXSTACK: usize = 1000000;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_REGISTRYINDEX` is never used
[INFO] [stdout]   --> src/api/consts.rs:46:11
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub const LUA_REGISTRYINDEX: isize = -(LUAI_MAXSTACK as isize) - 1000;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_RIDX_GLOBALS` is never used
[INFO] [stdout]   --> src/api/consts.rs:47:11
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub const LUA_RIDX_GLOBALS: isize = 2;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `RustFn` is never used
[INFO] [stdout]  --> src/api/lua_state.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub type RustFn = fn(&dyn LuaState) -> usize;
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `LuaState` is never used
[INFO] [stdout]  --> src/api/lua_state.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait LuaState {
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `LuaVM` is never used
[INFO] [stdout]  --> src/api/lua_vm.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait LuaVM: super::lua_state::LuaState {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CmpOp` is never used
[INFO] [stdout]   --> src/api/op.rs:44:10
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub enum CmpOp {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_u8` is never used
[INFO] [stdout]   --> src/api/op.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl CmpOp {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 53 |     pub fn from_u8(value: u8) -> Option<CmpOp> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_lua_state` is never used
[INFO] [stdout]   --> src/state/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn new_lua_state() -> LuaState {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_lua_state_with_proto` is never used
[INFO] [stdout]   --> src/state/mod.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn new_lua_state_with_proto(proto: Rc<Prototype>) -> LuaState {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iadd` is never used
[INFO] [stdout]  --> src/state/arith_ops.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn iadd(a: i64, b: i64) -> i64 {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fadd` is never used
[INFO] [stdout]  --> src/state/arith_ops.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn fadd(a: f64, b: f64) -> f64 {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `isub` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn isub(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fsub` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn fsub(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `imul` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn imul(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fmul` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn fmul(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `imod` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn imod(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fmod` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn fmod(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pow` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn pow(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn div(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iidiv` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn iidiv(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fidiv` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn fidiv(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `band` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn band(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bor` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn bor(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bxor` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn bxor(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shl` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn shl(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shr` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn shr(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iunm` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn iunm(a: i64, _: i64) -> i64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `funm` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn funm(a: f64, _: f64) -> f64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bnot` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn bnot(a: i64, _: i64) -> i64 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inone` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:83:4
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn inone(_: i64, _: i64) -> i64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fnone` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn fnone(_: f64, _: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPS` is never used
[INFO] [stdout]   --> src/state/arith_ops.rs:91:11
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub const OPS: &'static [(fn(i64, i64) -> i64, fn(f64, f64) -> f64)] = &[
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `arith` is never used
[INFO] [stdout]    --> src/state/arith_ops.rs:108:8
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub fn arith(a: &LuaValue, b: &LuaValue, op: u8) -> Option<LuaValue> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Closure` is never constructed
[INFO] [stdout]  --> src/state/closure.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Closure {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new`, `new_fake_closure`, `new_lua_closure`, and `new_rust_closure` are never used
[INFO] [stdout]   --> src/state/closure.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Closure {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 22 |     pub fn new(proto: Rc<Prototype>) -> Closure {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn new_fake_closure() -> Closure {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn new_lua_closure(proto: Rc<Prototype>) -> Closure {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn new_rust_closure(f: RustFn) -> Closure {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_empty_prototype` is never used
[INFO] [stdout]   --> src/state/closure.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn new_empty_prototype() -> Rc<Prototype> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare` is never used
[INFO] [stdout]  --> src/state/cmp_ops.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn compare(a: &LuaValue, b: &LuaValue, op: u8) -> Option<bool> {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eq` is never used
[INFO] [stdout]   --> src/state/cmp_ops.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn eq(a: &LuaValue, b: &LuaValue) -> bool {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lt` is never used
[INFO] [stdout]   --> src/state/cmp_ops.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn lt(a: &LuaValue, b: &LuaValue) -> Option<bool> {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `le` is never used
[INFO] [stdout]   --> src/state/cmp_ops.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn le(a: &LuaValue, b: &LuaValue) -> Option<bool> {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gt` is never used
[INFO] [stdout]   --> src/state/cmp_ops.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn gt(a: &LuaValue, b: &LuaValue) -> Option<bool> {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ge` is never used
[INFO] [stdout]   --> src/state/cmp_ops.rs:61:4
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn ge(a: &LuaValue, b: &LuaValue) -> Option<bool> {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LuaStack` is never constructed
[INFO] [stdout]  --> src/state/lua_stack.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct LuaStack {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/state/lua_stack.rs:19:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl LuaStack {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  18 |     /// 创建一个新的 `LuaStack`，预分配指定大小的空间。
[INFO] [stdout]  19 |     pub fn new(size: usize, registry: LuaValue, closure: Rc<Closure>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |     pub fn new_for_test(size: usize, closure: Rc<Closure>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  41 |     pub fn top(&self) -> isize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  46 |     pub fn check(&mut self, n: usize) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn push(&mut self, val: LuaValue) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  56 |     pub fn push_n(&mut self, mut vals: Vec<LuaValue>, n: isize) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn pop(&mut self) -> LuaValue {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     pub fn pop_n(&mut self, n: usize) -> Vec<LuaValue> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn abs_index(&self, idx: isize) -> isize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn is_valid(&self, idx: isize) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn get(&self, idx: isize) -> LuaValue {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn set(&mut self, idx: isize, val: LuaValue) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn set_top(&mut self, idx: isize) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn reverse(&mut self, mut from: usize, mut to: usize) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_RIDX_GLOBALS` is never used
[INFO] [stdout]   --> src/state/lua_state.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const LUA_RIDX_GLOBALS: LuaValue = LuaValue::Integer(crate::api::consts::LUA_RIDX_GLOBALS as i64);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LuaState` is never constructed
[INFO] [stdout]   --> src/state/lua_state.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct LuaState {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `new_with_proto`, `stack_mut`, `stack`, `push_frame`, and `pop_frame` are never used
[INFO] [stdout]   --> src/state/lua_state.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl LuaState {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new() -> LuaState {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn new_with_proto(proto: Rc<Prototype>) -> LuaState {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn stack_mut(&mut self) -> &mut LuaStack {
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub(crate) fn stack(&self) -> &LuaStack {
[INFO] [stdout]    |                   ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub(crate) fn push_frame(&mut self, frame: LuaStack) {
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub(crate) fn pop_frame(&mut self) -> LuaStack {
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `get_table_impl`, `set_table_impl`, `call_rust_closure`, `call_lua_closure`, and `run_lua_closure` are never used
[INFO] [stdout]    --> src/state/lua_state.rs:506:8
[INFO] [stdout]     |
[INFO] [stdout] 505 | impl LuaState {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 506 |     fn get_table_impl(&mut self, t: &LuaValue, k: &LuaValue) -> i8 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 517 |     fn set_table_impl(t: &LuaValue, k: LuaValue, v: LuaValue) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 525 |     fn call_rust_closure(&mut self, nargs: usize, nresults: isize, c: Rc<Closure>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 550 |     fn call_lua_closure(&mut self, nargs: usize, nresults: isize, c: Rc<Closure>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 |     fn run_lua_closure(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_stack` is never used
[INFO] [stdout]    --> src/state/lua_state.rs:605:4
[INFO] [stdout]     |
[INFO] [stdout] 605 | fn print_stack(opname: &str, ls: &LuaState) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LuaTable` is never constructed
[INFO] [stdout]  --> src/state/lua_table.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct LuaTable {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `len`, `get`, `put`, `shrink_array`, and `expand_array` are never used
[INFO] [stdout]   --> src/state/lua_table.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl LuaTable {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 19 |     pub fn new(narr: usize, nrec: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn get(&self, key: &LuaValue) -> LuaValue {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn put(&mut self, key: LuaValue, val: LuaValue) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn shrink_array(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     fn expand_array(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_index` is never used
[INFO] [stdout]    --> src/state/lua_table.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn to_index(key: &LuaValue) -> Option<usize> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LuaValue` is never used
[INFO] [stdout]   --> src/state/lua_value.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum LuaValue {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/state/lua_value.rs:71:12
[INFO] [stdout]     |
[INFO] [stdout]  70 | impl LuaValue {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  71 |     pub fn is_nil(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn type_id(&self) -> i8 {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn to_boolean(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn to_number(&self) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn to_integer(&self) -> Option<i64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn new_table(narr: usize, nrec: usize) -> LuaValue {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn new_lua_closure(proto: Rc<Prototype>) -> LuaValue {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn new_rust_closure(f: RustFn) -> LuaValue {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `float_to_integer` is never used
[INFO] [stdout]    --> src/state/lua_value.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn float_to_integer(n: f64) -> Option<i64> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `string_to_integer` is never used
[INFO] [stdout]    --> src/state/lua_value.rs:138:4
[INFO] [stdout]     |
[INFO] [stdout] 138 | fn string_to_integer(s: &String) -> Option<i64> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random` is never used
[INFO] [stdout]  --> src/state/math.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn random() -> usize {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number_to_integer` is never used
[INFO] [stdout]  --> src/state/math.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn number_to_integer(n: f64) -> Option<i64> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `i_floor_div` is never used
[INFO] [stdout]   --> src/state/math.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn i_floor_div(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `f_floor_div` is never used
[INFO] [stdout]   --> src/state/math.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn f_floor_div(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `i_mod` is never used
[INFO] [stdout]   --> src/state/math.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn i_mod(a: i64, b: i64) -> i64 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `f_mod` is never used
[INFO] [stdout]   --> src/state/math.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn f_mod(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shift_left` is never used
[INFO] [stdout]   --> src/state/math.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn shift_left(a: i64, n: i64) -> i64 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shift_right` is never used
[INFO] [stdout]   --> src/state/math.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn shift_right(a: i64, n: i64) -> i64 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_positive_infinite` is never used
[INFO] [stdout]   --> src/state/math.rs:61:4
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn is_positive_infinite(f: f64) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_negative_infinite` is never used
[INFO] [stdout]   --> src/state/math.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn is_negative_infinite(f: f64) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `call` is never used
[INFO] [stdout]   --> src/vm/instr_call.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn call(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tail_call` is never used
[INFO] [stdout]   --> src/vm/instr_call.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn tail_call(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return0` is never used
[INFO] [stdout]   --> src/vm/instr_call.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn return0(_i: u32, _vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `closure` is never used
[INFO] [stdout]   --> src/vm/instr_call.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn closure(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vararg` is never used
[INFO] [stdout]   --> src/vm/instr_call.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn vararg(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_func_and_args` is never used
[INFO] [stdout]   --> src/vm/instr_call.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn push_func_and_args(a: isize, b: isize, vm: &mut dyn LuaVM) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fix_stack` is never used
[INFO] [stdout]   --> src/vm/instr_call.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn fix_stack(a: isize, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pop_results` is never used
[INFO] [stdout]   --> src/vm/instr_call.rs:93:4
[INFO] [stdout]    |
[INFO] [stdout] 93 | fn pop_results(a: isize, c: isize, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `for_loop` is never used
[INFO] [stdout]  --> src/vm/instr_for.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn for_loop(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `for_prep` is never used
[INFO] [stdout]   --> src/vm/instr_for.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub fn for_prep(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_number_for_loop` is never used
[INFO] [stdout]   --> src/vm/instr_for.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn is_number_for_loop(vm: &mut dyn LuaVM, a: isize) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_i` is never used
[INFO] [stdout]  --> src/vm/instr_load.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn load_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_f` is never used
[INFO] [stdout]   --> src/vm/instr_load.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn load_f(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_k` is never used
[INFO] [stdout]   --> src/vm/instr_load.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn load_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_kx` is never used
[INFO] [stdout]   --> src/vm/instr_load.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn load_kx(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_false` is never used
[INFO] [stdout]   --> src/vm/instr_load.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn load_false(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_l_false_skip` is never used
[INFO] [stdout]   --> src/vm/instr_load.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn load_l_false_skip(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_true` is never used
[INFO] [stdout]   --> src/vm/instr_load.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub fn load_true(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_nil` is never used
[INFO] [stdout]   --> src/vm/instr_load.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn load_nil(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jmp` is never used
[INFO] [stdout]   --> src/vm/instr_misc.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn jmp(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `arith` is never used
[INFO] [stdout]  --> src/vm/instr_ops.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn arith(i: u32, vm: &mut dyn LuaVM, op: u8) {
[INFO] [stdout]   |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `arith_i` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn arith_i(i: u32, vm: &mut dyn LuaVM, op: u8) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `arith_k` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn arith_k(i: u32, vm: &mut dyn LuaVM, op: u8) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unary_arith` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn unary_arith(i: u32, vm: &mut dyn LuaVM, op: u8) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn compare(i: u32, vm: &mut dyn LuaVM, op: u8) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_i` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn compare_i(i: u32, vm: &mut dyn LuaVM, op: u8) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_k` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn compare_k(i: u32, vm: &mut dyn LuaVM, op: u8) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_i` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn add_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_k` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn add_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_k` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn sub_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul_k` is never used
[INFO] [stdout]   --> src/vm/instr_ops.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn mul_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pow_k` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub fn pow_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div_k` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:110:8
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn div_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `idiv_k` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:115:8
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub fn idiv_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `band_k` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn band_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bor_k` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn bor_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bxor_k` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn bxor_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shl_i` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:135:8
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub fn shl_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shr_i` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:140:8
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub fn shr_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub fn add(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn sub(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:155:8
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub fn mul(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pow` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:165:8
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub fn pow(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub fn div(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `idiv` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn idiv(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `band` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:180:8
[INFO] [stdout]     |
[INFO] [stdout] 180 | pub fn band(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bor` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn bor(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bxor` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub fn bxor(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shl` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub fn shl(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shr` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub fn shr(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unm` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn unm(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bnot` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:210:8
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub fn bnot(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `not` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn not(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `len` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:222:8
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub fn len(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `concat` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:229:8
[INFO] [stdout]     |
[INFO] [stdout] 229 | pub fn concat(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eq` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn eq(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lt` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn lt(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `le` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub fn le(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eq_k` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:255:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub fn eq_k(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eq_i` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:260:8
[INFO] [stdout]     |
[INFO] [stdout] 260 | pub fn eq_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lt_i` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:265:8
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub fn lt_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `le_i` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:270:8
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub fn le_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gt_i` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:275:8
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub fn gt_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ge_i` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:280:8
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub fn ge_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_set` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:285:8
[INFO] [stdout]     |
[INFO] [stdout] 285 | pub fn test_set(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]    --> src/vm/instr_ops.rs:294:8
[INFO] [stdout]     |
[INFO] [stdout] 294 | pub fn test(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_table` is never used
[INFO] [stdout]  --> src/vm/instr_table.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn new_table(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_table` is never used
[INFO] [stdout]   --> src/vm/instr_table.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn get_table(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_i` is never used
[INFO] [stdout]   --> src/vm/instr_table.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn get_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_field` is never used
[INFO] [stdout]   --> src/vm/instr_table.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn get_field(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_table` is never used
[INFO] [stdout]   --> src/vm/instr_table.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn set_table(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_i` is never used
[INFO] [stdout]   --> src/vm/instr_table.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn set_i(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_field` is never used
[INFO] [stdout]   --> src/vm/instr_table.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn set_field(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_list` is never used
[INFO] [stdout]   --> src/vm/instr_table.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn set_list(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_tab_up` is never used
[INFO] [stdout]  --> src/vm/instr_upval.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn get_tab_up(i: u32, vm: &mut dyn LuaVM) {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `opmode` and `execute` are never used
[INFO] [stdout]   --> src/vm/instruction.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub trait Instruction {
[INFO] [stdout]    |           ----------- methods in this trait
[INFO] [stdout] 57 |     fn opname(self) -> &'static str;
[INFO] [stdout] 58 |     fn opmode(self) -> u8;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn execute(self, vm: &mut dyn LuaVM);
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_MOVE` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub const OP_MOVE: u8 = 0b0000000;
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LOADI` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub const OP_LOADI: u8 = 0b0000001;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LOADF` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const OP_LOADF: u8 = 0b0000010;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LOADK` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const OP_LOADK: u8 = 0b0000011;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LOADKX` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const OP_LOADKX: u8 = 0b0000100;
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LOADFALSE` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const OP_LOADFALSE: u8 = 0b0000101;
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LFALSESKIP` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const OP_LFALSESKIP: u8 = 0b0000110;
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LOADTRUE` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const OP_LOADTRUE: u8 = 0b0000111;
[INFO] [stdout]   |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LOADNIL` is never used
[INFO] [stdout]  --> src/vm/opcodes.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const OP_LOADNIL: u8 = 0b0001000;
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_GETUPVAL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const OP_GETUPVAL: u8 = 0b0001001;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SETUPVAL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const OP_SETUPVAL: u8 = 0b0001010;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_GETTABUP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OP_GETTABUP: u8 = 0b0001011;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_GETTABLE` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const OP_GETTABLE: u8 = 0b0001100;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_GETI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const OP_GETI: u8 = 0b0001101;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_GETFIELD` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const OP_GETFIELD: u8 = 0b0001110;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SETTABUP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const OP_SETTABUP: u8 = 0b0001111;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SETTABLE` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const OP_SETTABLE: u8 = 0b0010000;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SETI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const OP_SETI: u8 = 0b0010001;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SETFIELD` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub const OP_SETFIELD: u8 = 0b0010010;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_NEWTABLE` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const OP_NEWTABLE: u8 = 0b0010011;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SELF` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const OP_SELF: u8 = 0b0010100;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_ADDI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const OP_ADDI: u8 = 0b0010101;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_ADDK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const OP_ADDK: u8 = 0b0010110;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SUBK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub const OP_SUBK: u8 = 0b0010111;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_MULK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const OP_MULK: u8 = 0b0011000;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_MODK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const OP_MODK: u8 = 0b0011001;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_POWK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub const OP_POWK: u8 = 0b0011010;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_DIVK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub const OP_DIVK: u8 = 0b0011011;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_IDIVK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub const OP_IDIVK: u8 = 0b0011100;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_BANDK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub const OP_BANDK: u8 = 0b0011101;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_BORK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:31:11
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub const OP_BORK: u8 = 0b0011110;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_BXORK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:32:11
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub const OP_BXORK: u8 = 0b0011111;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SHRI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const OP_SHRI: u8 = 0b0100000;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SHLI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:34:11
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub const OP_SHLI: u8 = 0b0100001;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_ADD` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub const OP_ADD: u8 = 0b0100010;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SUB` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub const OP_SUB: u8 = 0b0100011;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_MUL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:37:11
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub const OP_MUL: u8 = 0b0100100;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_MOD` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:38:11
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub const OP_MOD: u8 = 0b0100101;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_POW` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:39:11
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub const OP_POW: u8 = 0b0100110;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_DIV` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub const OP_DIV: u8 = 0b0100111;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_IDIV` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:41:11
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub const OP_IDIV: u8 = 0b0101000;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_BAND` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:42:11
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub const OP_BAND: u8 = 0b0101001;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_BOR` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:43:11
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub const OP_BOR: u8 = 0b0101010;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_BXOR` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub const OP_BXOR: u8 = 0b0101011;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SHL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:45:11
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub const OP_SHL: u8 = 0b0101100;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SHR` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:46:11
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub const OP_SHR: u8 = 0b0101101;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_MMBIN` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:47:11
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub const OP_MMBIN: u8 = 0b0101110;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_MMBINI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:48:11
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub const OP_MMBINI: u8 = 0b0101111;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_MMBINK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:49:11
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub const OP_MMBINK: u8 = 0b0110000;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_UNM` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:50:11
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub const OP_UNM: u8 = 0b0110001;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_BNOT` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:51:11
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub const OP_BNOT: u8 = 0b0110010;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_NOT` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:52:11
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub const OP_NOT: u8 = 0b0110011;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LEN` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:53:11
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub const OP_LEN: u8 = 0b0110100;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_CONCAT` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:54:11
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub const OP_CONCAT: u8 = 0b0110101;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_CLOSE` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:55:11
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub const OP_CLOSE: u8 = 0b0110110;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TBC` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:56:11
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub const OP_TBC: u8 = 0b0110111;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_JMP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:57:11
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub const OP_JMP: u8 = 0b0111000;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_EQ` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:58:11
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub const OP_EQ: u8 = 0b0111001;
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LT` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:59:11
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub const OP_LT: u8 = 0b0111010;
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LE` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:60:11
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub const OP_LE: u8 = 0b0111011;
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_EQK` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:61:11
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub const OP_EQK: u8 = 0b0111100;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_EQI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:62:11
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub const OP_EQI: u8 = 0b0111101;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LTI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:63:11
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub const OP_LTI: u8 = 0b0111110;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_LEI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub const OP_LEI: u8 = 0b0111111;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_GTI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub const OP_GTI: u8 = 0b1000000;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_GEI` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:66:11
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub const OP_GEI: u8 = 0b1000001;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TEST` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub const OP_TEST: u8 = 0b1000010;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TESTSET` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:68:11
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub const OP_TESTSET: u8 = 0b1000011;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_CALL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:69:11
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub const OP_CALL: u8 = 0b1000100;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TAILCALL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:70:11
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub const OP_TAILCALL: u8 = 0b1000101;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_RETURN` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:71:11
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub const OP_RETURN: u8 = 0b1000110;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_RETURN0` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub const OP_RETURN0: u8 = 0b1000111;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_RETURN1` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:73:11
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub const OP_RETURN1: u8 = 0b1001000;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_FORLOOP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:74:11
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub const OP_FORLOOP: u8 = 0b1001001;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_FORPREP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:75:11
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub const OP_FORPREP: u8 = 0b1001010;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TFORPREP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:76:11
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub const OP_TFORPREP: u8 = 0b1001011;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TFORCALL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:77:11
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub const OP_TFORCALL: u8 = 0b1001100;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TFORLOOP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub const OP_TFORLOOP: u8 = 0b1001101;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SETLIST` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:79:11
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub const OP_SETLIST: u8 = 0b1001110;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_CLOSURE` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:80:11
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub const OP_CLOSURE: u8 = 0b1001111;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_VARARG` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:81:11
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub const OP_VARARG: u8 = 0b1010000;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_VARARGPREP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:82:11
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub const OP_VARARGPREP: u8 = 0b1010001;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_EXTRAARG` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:83:11
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub const OP_EXTRAARG: u8 = 0b1010010;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `mm`, `ot`, `it`, `t`, `a`, and `opmode` are never read
[INFO] [stdout]    --> src/vm/opcodes.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub struct OpCode {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 217 |     pub mm: u8,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 218 |     pub ot: u8,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 219 |     pub it: u8,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 220 |     pub t: u8,
[INFO] [stdout]     |         ^
[INFO] [stdout] 221 |     pub a: u8,
[INFO] [stdout]     |         ^
[INFO] [stdout] 222 |     pub opmode: OpMode,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OpCode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/state/arith_ops.rs:110:8
[INFO] [stdout]     |
[INFO] [stdout] 110 |     if fop == fnone {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 110 -     if fop == fnone {
[INFO] [stdout] 110 +     if std::ptr::fn_addr_eq(fop, fnone as fn(f64, f64) -> f64) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/state/arith_ops.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout] 117 |         if iop != inone {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 117 -         if iop != inone {
[INFO] [stdout] 117 +         if !std::ptr::fn_addr_eq(iop, inone as fn(i64, i64) -> i64) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LUA_TUPVAL` is never used
[INFO] [stdout]   --> src/api/consts.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const LUA_TUPVAL: i8 = LUA_NUMTYPES;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `abs_index`, `insert`, `is_thread`, `is_rust_function`, `to_rust_function`, and `get_global` are never used
[INFO] [stdout]    --> src/api/lua_state.rs:16:8
[INFO] [stdout]     |
[INFO] [stdout]   3 | pub trait LuaState {
[INFO] [stdout]     |           -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout]  16 |     fn abs_index(&self, idx: isize) -> isize;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  55 |     fn insert(&mut self, idx: isize);
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn is_thread(&self, idx: isize) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     fn is_rust_function(&self, idx: isize) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     fn to_rust_function(&self, idx: isize) -> Option<RustFn>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     fn get_global(&mut self, name: &str) -> i8;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_stack` is never used
[INFO] [stdout]    --> src/state/lua_state.rs:605:4
[INFO] [stdout]     |
[INFO] [stdout] 605 | fn print_stack(opname: &str, ls: &LuaState) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `opmode` is never used
[INFO] [stdout]   --> src/vm/instruction.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub trait Instruction {
[INFO] [stdout]    |           ----------- method in this trait
[INFO] [stdout] 57 |     fn opname(self) -> &'static str;
[INFO] [stdout] 58 |     fn opmode(self) -> u8;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_GETUPVAL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const OP_GETUPVAL: u8 = 0b0001001;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SETUPVAL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const OP_SETUPVAL: u8 = 0b0001010;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_SETTABUP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const OP_SETTABUP: u8 = 0b0001111;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_CLOSE` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:55:11
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub const OP_CLOSE: u8 = 0b0110110;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TBC` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:56:11
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub const OP_TBC: u8 = 0b0110111;
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TFORPREP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:76:11
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub const OP_TFORPREP: u8 = 0b1001011;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TFORCALL` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:77:11
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub const OP_TFORCALL: u8 = 0b1001100;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OP_TFORLOOP` is never used
[INFO] [stdout]   --> src/vm/opcodes.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub const OP_TFORLOOP: u8 = 0b1001101;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `mm`, `ot`, `it`, `t`, `a`, and `opmode` are never read
[INFO] [stdout]    --> src/vm/opcodes.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub struct OpCode {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 217 |     pub mm: u8,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 218 |     pub ot: u8,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 219 |     pub it: u8,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 220 |     pub t: u8,
[INFO] [stdout]     |         ^
[INFO] [stdout] 221 |     pub a: u8,
[INFO] [stdout]     |         ^
[INFO] [stdout] 222 |     pub opmode: OpMode,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OpCode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/state/arith_ops.rs:110:8
[INFO] [stdout]     |
[INFO] [stdout] 110 |     if fop == fnone {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 110 -     if fop == fnone {
[INFO] [stdout] 110 +     if std::ptr::fn_addr_eq(fop, fnone as fn(f64, f64) -> f64) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/state/arith_ops.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout] 117 |         if iop != inone {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 117 -         if iop != inone {
[INFO] [stdout] 117 +         if !std::ptr::fn_addr_eq(iop, inone as fn(i64, i64) -> i64) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.71s
[INFO] running `Command { std: "docker" "inspect" "9efe499873741e6fe0502739ef11529968a7d200200a42ab6a9a9ef29eeb2a49", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9efe499873741e6fe0502739ef11529968a7d200200a42ab6a9a9ef29eeb2a49", kill_on_drop: false }`
[INFO] [stdout] 9efe499873741e6fe0502739ef11529968a7d200200a42ab6a9a9ef29eeb2a49
