repo: zvm
commit: d18bff193c8b1996d072a0ab5c5625ca19b4cdf7, run: 297
status: error in 5m56s
description: callback error: stack traceback:
[C]: in ?
[C]: in field 'size'
[string "goodfile"]:24: in main chunk
deployed: false
artifacts
Tue, 18 Jul 2023 05:26:32 +0000
step:
git clone log (stdout)
0kb in 0.859s
Tue, 18 Jul 2023 05:26:32 +0000
step:
git clone log (stderr)
0kb in 0.838s
Tue, 18 Jul 2023 05:26:33 +0000
step:
git checkout log (stdout)
0kb in 0.030s
Tue, 18 Jul 2023 05:26:33 +0000
step:
git checkout log (stderr)
0kb in 0.065s
Tue, 18 Jul 2023 05:26:33 +0000
step:
cargo build -p zvm log (stdout)
0kb in 2m2s
Tue, 18 Jul 2023 05:26:33 +0000
step:
cargo build -p zvm log (stderr)
28kb in 2m2s
Tue, 18 Jul 2023 05:28:35 +0000
step:
cargo build -p zvm-stdlib log (stdout)
0kb in 0.398s
Tue, 18 Jul 2023 05:28:35 +0000
step:
cargo build -p zvm-stdlib log (stderr)
27kb in 0.385s
Tue, 18 Jul 2023 05:28:36 +0000
step:
cargo build -p zvm-tools log (stdout)
0kb in 2.502s
Tue, 18 Jul 2023 05:28:36 +0000
step:
cargo build -p zvm-tools log (stderr)
27kb in 2.489s
Tue, 18 Jul 2023 05:28:38 +0000
step:
cargo build -p zvm-cli log (stdout)
0kb in 3.444s
Tue, 18 Jul 2023 05:28:38 +0000
step:
cargo build -p zvm-cli log (stderr)
27kb in 3.431s
Tue, 18 Jul 2023 05:28:42 +0000
step:
cargo test --workspace log (stdout)
0kb in 9.412s
Tue, 18 Jul 2023 05:28:42 +0000
step:
cargo test --workspace log (stderr)
29kb in 9.396s
Tue, 18 Jul 2023 05:28:51 +0000
step:
cargo build -p zvm --release log (stdout)
Tue, 18 Jul 2023 05:28:51 +0000
step:
cargo build -p zvm --release log (stderr)
Compiling autocfg v1.1.0
Compiling cfg-if v1.0.0
Compiling log v0.4.17
Compiling libc v0.2.126
Compiling smallvec v1.9.0
Compiling proc-macro2 v1.0.42
Compiling lock_api v0.4.7
Compiling cranelift-isle v0.86.1
Compiling parking_lot_core v0.8.5
Compiling quote v1.0.20
Compiling byteorder v1.3.2
Compiling unicode-ident v1.0.2
Compiling instant v0.1.12
Compiling indexmap v1.9.1
Compiling cranelift-codegen-shared v0.86.1
Compiling scopeguard v1.1.0
Compiling syn v1.0.98
Compiling cranelift-codegen-meta v0.86.1
Compiling mio v0.7.14
Compiling signal-hook-registry v1.4.0
Compiling num-traits v0.2.15
Compiling serde v1.0.140
Compiling target-lexicon v0.12.4
Compiling hashbrown v0.12.3
Compiling serde_derive v1.0.140
Compiling signal-hook v0.1.17
Compiling fxhash v0.2.1
Compiling cranelift-codegen v0.86.1
Compiling parking_lot v0.11.2
Compiling cranelift-entity v0.86.1
Compiling bitflags v1.3.2
Compiling lazy_static v1.4.0
Compiling slice-group-by v0.3.0
Compiling regalloc2 v0.3.1
Compiling crossterm v0.19.0
Compiling cranelift-bforest v0.86.1
Compiling gimli v0.26.2
Compiling yaxpeax-x86 v1.1.4
Compiling yaxpeax-arch v0.2.7
Compiling cranelift-frontend v0.86.1
Compiling zvm v0.1.0 (/root/ixi_ci_server/tmpdir)
warning: unused import: `std::cell::RefCell`
--> src/virtual_machine/jvm/synthetic.rs:1:5
|
1 | use std::cell::RefCell;
| ^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused import: `attribute::Attribute`
--> src/virtual_machine/jvm/synthetic.rs:7:38
|
7 | use crate::class_file::unvalidated::{attribute::Attribute, AttributeInfo, MethodAccessFlags, MethodInfo};
| ^^^^^^^^^^^^^^^^^^^^
warning: unused import: `ValueRef`
--> src/virtual_machine/jvm/synthetic.rs:9:77
|
9 | use crate::virtual_machine::{ClassFile, ClassFileRef, UnvalidatedClassFile, ValueRef};
| ^^^^^^^^
warning: unused import: `NativeObject`
--> src/virtual_machine/jvm/synthetic.rs:10:73
|
10 | use crate::virtual_machine::{MethodBody, JvmArray, JvmObject, JvmValue, NativeObject};
| ^^^^^^^^^^^^
warning: unused import: `std::collections::hash_map::Entry`
--> src/virtual_machine.rs:3575:17
|
3575 | use std::collections::hash_map::Entry;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
warning: unused import: `std::rc::Rc`
--> src/compiler/mod.rs:2:5
|
2 | use std::rc::Rc;
| ^^^^^^^^^^^
warning: unused import: `SimpleJvmValue`
--> src/compiler/mod.rs:9:13
|
9 | use crate::{SimpleJvmValue, VirtualMachine, VMState};
| ^^^^^^^^^^^^^^
warning: unused import: `std::cell::RefCell`
--> src/compiler/mod.rs:1113:5
|
1113 | use std::cell::RefCell;
| ^^^^^^^^^^^^^^^^^^
warning: unused import: `std::borrow::Borrow`
--> src/compiler/mod.rs:1151:5
|
1151 | use std::borrow::Borrow;
| ^^^^^^^^^^^^^^^^^^^
warning: unreachable expression
--> src/virtual_machine/jvm/synthetic.rs:1154:9
|
1153 | let data: &[u8] = panic!("get string somehow");
| ---------------------------- any code following this expression is unreachable
1154 | / match &data[..] {
1155 | | b"file.encoding" => {
1156 | | ValueImpl::string(vm, "UTF-8")
1157 | | }
... |
1162 | | }
1163 | | }
| |_________^ unreachable expression
|
= note: `#[warn(unreachable_code)]` on by default
warning: unreachable statement
--> src/virtual_machine/jvm/synthetic.rs:1168:5
|
1165 | panic!("invalid argument for getProperty {:?}", argument);
| --------------------------------------------------------- any code following this expression is unreachable
...
1168 | state.current_frame_mut().operand_stack.push(property);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
warning: unreachable statement
--> src/virtual_machine/jvm/synthetic.rs:1202:9
|
1199 | panic!("todo: turn class name array into a real string");
| -------------------------------------------------------- any code following this expression is unreachable
...
1202 | / state.current_frame_mut()
1203 | | .operand_stack
1204 | | .push(ValueImpl::array_with_data(
1205 | | vm.resolve_class(class_name_string).expect("TODO: need to fish out the right string from `cls`."),
1206 | | elems.into_boxed_slice(),
1207 | | ));
| |_______________^ unreachable statement
warning: unreachable call
--> src/virtual_machine.rs:2765:61
|
2765 | let layout_id = ZVM.as_ref().unwrap().layouts().get_layout_id(panic!("&class_file.this_name")).expect("TODO: class exists");
| ^^^^^^^^^^^^^ ------------------------------- any code following this expression is unreachable
| |
| unreachable call
warning: unreachable expression
--> src/virtual_machine.rs:2950:9
|
2950 | / Self {
2951 | | cls: class_file,
2952 | | data: panic!("todo: do something with argument")
| | ------------------------------------------ any code following this expression is unreachable
2953 | | }
| |_________^ unreachable expression
warning: unused variable: `bytecode`
--> src/class_file/unvalidated/class.rs:180:9
|
180 | bytecode: Option>,
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytecode`
|
= note: `#[warn(unused_variables)]` on by default
warning: unused variable: `obj`
--> src/virtual_machine/jvm/synthetic.rs:427:24
|
427 | } else if let Some(obj) = argument.as_object() {
| ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
warning: unused variable: `vm`
--> src/virtual_machine/jvm/synthetic.rs:595:71
|
595 | fn object_equals(state: &mut VMState, vm: &mut VirtualMachine) -> Result<(), VMError> {
| ^^ help: if this is intentional, prefix it with an underscore: `_vm`
warning: unused variable: `property`
--> src/virtual_machine/jvm/synthetic.rs:1152:9
|
1152 | let property = if argument.as_type("java/lang/String").is_some() {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property`
warning: unused variable: `data`
--> src/virtual_machine/jvm/synthetic.rs:1153:13
|
1153 | let data: &[u8] = panic!("get string somehow");
| ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
warning: unused variable: `vm`
--> src/virtual_machine/jvm/synthetic.rs:1145:77
|
1145 | fn system_get_property(state: &mut VMState, vm: &mut VirtualMachine) -> Result<(), VMError> {
| ^^ help: if this is intentional, prefix it with an underscore: `_vm`
warning: unused variable: `class_name_string`
--> src/virtual_machine/jvm/synthetic.rs:1194:13
|
1194 | let class_name_string = {
| ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name_string`
warning: unused variable: `vm`
--> src/virtual_machine/jvm/synthetic.rs:1172:72
|
1172 | fn array_newarray(state: &mut VMState, vm: &mut VirtualMachine) -> Result<(), VMError> {
| ^^ help: if this is intentional, prefix it with an underscore: `_vm`
warning: unused variable: `frame`
--> src/virtual_machine.rs:365:13
|
365 | let frame = self.current_frame();
| ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame`
warning: unused variable: `layout_id`
--> src/virtual_machine.rs:2765:17
|
2765 | let layout_id = ZVM.as_ref().unwrap().layouts().get_layout_id(panic!("&class_file.this_name")).expect("TODO: class exists");
| ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_layout_id`
warning: unused variable: `classfile_ptr`
--> src/virtual_machine.rs:2770:17
|
2770 | let classfile_ptr = Arc::into_raw(class_file);
| ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_classfile_ptr`
warning: unused variable: `class_file`
--> src/virtual_machine.rs:2897:18
|
2897 | fn new_array(class_file: Arc, data: Box<[NativeJvmValue]>) -> Self {
| ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_file`
warning: unused variable: `data`
--> src/virtual_machine.rs:2897:46
|
2897 | fn new_array(class_file: Arc, data: Box<[NativeJvmValue]>) -> Self {
| ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
warning: unused variable: `idx`
--> src/virtual_machine.rs:2931:24
|
2931 | fn get_elem(&self, idx: usize) -> Option<&SimpleJvmValue> {
| ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
warning: unused variable: `idx`
--> src/virtual_machine.rs:2934:28
|
2934 | fn get_elem_mut(&self, idx: usize) -> Option<&mut SimpleJvmValue> {
| ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
warning: unused variable: `data`
--> src/virtual_machine.rs:2949:46
|
2949 | fn new_array(class_file: Arc, data: Box<[SimpleJvmValue]>) -> Self {
| ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
warning: unused variable: `v`
--> src/virtual_machine.rs:3104:14
|
3104 | fn float(v: f32) -> Self {
| ^ help: if this is intentional, prefix it with an underscore: `_v`
warning: unused variable: `v`
--> src/virtual_machine.rs:3108:15
|
3108 | fn double(v: f64) -> Self {
| ^ help: if this is intentional, prefix it with an underscore: `_v`
warning: unused variable: `s`
--> src/virtual_machine.rs:3112:13
|
3112 | fn null(s: String) -> Self {
| ^ help: if this is intentional, prefix it with an underscore: `_s`
warning: unused variable: `managed_alloc_name`
--> src/compiler/mod.rs:467:17
|
467 | let managed_alloc_name = ExternalName::User { namespace: 0, index: 0 };
| ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_managed_alloc_name`
warning: unused variable: `other`
--> src/compiler/mod.rs:567:29
|
567 | ... other => { return Err(ir::CompileError::InvalidSignature("managed alloc returned multiple values?")); }
| ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
warning: unused variable: `value`
--> src/compiler/mod.rs:571:48
|
571 | ir::Instruction::Dealloc { value } => {
| ^^^^^ help: try ignoring the field: `value: _`
warning: unused variable: `name`
--> src/compiler/mod.rs:574:59
|
574 | ir::Instruction::CallImport { result, name, sig, args } => {
| ^^^^ help: try ignoring the field: `name: _`
warning: unused variable: `ret`
--> src/compiler/mod.rs:576:51
|
576 | let returns = if let Some(ret) = sig.1 {
| ^^^ help: if this is intentional, prefix it with an underscore: `_ret`
warning: unused variable: `other`
--> src/compiler/mod.rs:616:29
|
616 | ... other => { return Err(ir::CompileError::InvalidSignature("call returned multiple values?")); }
| ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
warning: unused variable: `i`
--> src/compiler/mod.rs:1421:10
|
1421 | for (i, cls) in extra_classes.iter().enumerate() {
| ^ help: if this is intentional, prefix it with an underscore: `_i`
warning: variable does not need to be mutable
--> src/class_file/unvalidated/class.rs:183:13
|
183 | let mut attributes = Vec::new();
| ----^^^^^^^^^^
| |
| help: remove this `mut`
|
= note: `#[warn(unused_mut)]` on by default
warning: variable does not need to be mutable
--> src/class_file/unvalidated/class.rs:209:9
|
209 | mut self,
| ----^^^^
| |
| help: remove this `mut`
warning: variable does not need to be mutable
--> src/virtual_machine/jvm/synthetic.rs:167:20
|
167 | pub fn extends(mut self, name: &str) -> Self {
| ----^^^^
| |
| help: remove this `mut`
warning: variable does not need to be mutable
--> src/virtual_machine/jvm/synthetic.rs:175:24
|
175 | pub fn with_method(mut self, name: &str, sig: &str, native: Option>) -> Self {
| ----^^^^
| |
| help: remove this `mut`
warning: variable does not need to be mutable
--> src/virtual_machine/jvm/synthetic.rs:178:13
|
178 | let mut bytecode_methods = self.bytecode_methods;
| ----^^^^^^^^^^^^^^^^
| |
| help: remove this `mut`
warning: variable does not need to be mutable
--> src/virtual_machine/jvm/synthetic.rs:224:23
|
224 | pub fn with_field(mut self, name: &str, sig: &str) -> Self {
| ----^^^^
| |
| help: remove this `mut`
warning: variable does not need to be mutable
--> src/virtual_machine/jvm/synthetic.rs:243:13
|
243 | let mut cls = ClassFile::validate(&self.cls).unwrap();
| ----^^^
| |
| help: remove this `mut`
warning: variable does not need to be mutable
--> src/virtual_machine.rs:3272:13
|
3272 | let mut obj = Self::ObjectTy::new_inst(class_file);
| ----^^^
| |
| help: remove this `mut`
warning: field `attributes` is never read
--> src/class_file/unvalidated/field.rs:46:16
|
42 | pub struct FieldInfo {
| --------- field in this struct
...
46 | pub(crate) attributes: Vec,
| ^^^^^^^^^^
|
= note: `FieldInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
= note: `#[warn(dead_code)]` on by default
warning: field `max_stack` is never read
--> src/class_file/validated/method.rs:25:16
|
24 | pub struct MethodBody {
| ---------- field in this struct
25 | pub(crate) max_stack: u16,
| ^^^^^^^^^
|
= note: `MethodBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
warning: field `layout_id` is never read
--> src/virtual_machine.rs:2729:5
|
2728 | struct ZvmObjectVTable {
| --------------- field in this struct
2729 | layout_id: crate::compiler::ir::LayoutId,
| ^^^^^^^^^
warning: field `data` is never read
--> src/virtual_machine.rs:2849:5
|
2845 | pub struct NativeJvmArrayData {
| ------------------ field in this struct
...
2849 | data: [NativeJvmValue; 1]
| ^^^^
warning: associated function `of` is never used
--> src/virtual_machine.rs:3341:12
|
3341 | pub fn of(reference: &ValueImpl) -> Self {
| ^^
warning: associated function `has_instance_field` is never used
--> src/virtual_machine.rs:3455:8
|
3455 | fn has_instance_field(
| ^^^^^^^^^^^^^^^^^^
warning: associated function `get_instance_field` is never used
--> src/virtual_machine.rs:3487:8
|
3487 | fn get_instance_field(
| ^^^^^^^^^^^^^^^^^^
warning: associated function `put_instance_field` is never used
--> src/virtual_machine.rs:3503:8
|
3503 | fn put_instance_field(
| ^^^^^^^^^^^^^^^^^^
warning: fields `bytes` and `len` are never read
--> src/compiler/mod.rs:313:5
|
312 | pub struct FunctionEmitter {
| --------------- fields in this struct
313 | bytes: *mut u8,
| ^^^^^
314 | len: usize,
| ^^^
warning: struct `CompiledMethod` is never constructed
--> src/compiler/mod.rs:360:12
|
360 | pub struct CompiledMethod {
| ^^^^^^^^^^^^^^
warning: fields `arguments`, `locals`, `blocks`, and `returns` are never read
--> src/compiler/mod.rs:383:5
|
382 | pub struct ZvmMethod {
| --------- fields in this struct
383 | arguments: Vec,
| ^^^^^^^^^
384 | locals: Vec,
| ^^^^^^
385 | blocks: Vec,
| ^^^^^^
386 | returns: Option,
| ^^^^^^^
|
= note: `ZvmMethod` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
warning: fields `blocks` and `layouts` are never read
--> src/compiler/mod.rs:722:5
|
720 | struct TranslatorState<'layouts> {
| --------------- fields in this struct
721 | current_block: ir::Block,
722 | blocks: Vec,
| ^^^^^^
...
728 | layouts: &'layouts ir::LayoutsInfo,
| ^^^^^^^
|
= note: `TranslatorState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
warning: function `desc_to_ir_valuety` is never used
--> src/compiler/mod.rs:863:4
|
863 | fn desc_to_ir_valuety(desc: &str) -> ir::ValueType {
| ^^^^^^^^^^^^^^^^^^
warning: function `bytecode2ir` is never used
--> src/compiler/mod.rs:871:8
|
871 | pub fn bytecode2ir(rt_info: &mut dyn RuntimeInfo, method: &MethodBody, sig: (Vec, Option)) -> Result src/compiler/mod.rs:1122:5
|
1119 | pub struct StructLayout {
| ------------ field in this struct
...
1122 | layout_id: u64,
| ^^^^^^^^^
warning: function `jit` is never used
--> src/compiler/mod.rs:1398:4
|
1398 | fn jit(args: &[i64], instructions: Vec, signature: &'static str, extra_classes: Vec>, rt_info: &mu...
| ^^^
warning: function `jitcall` is never used
--> src/compiler/mod.rs:1471:4
|
1471 | fn jitcall(args: &[i64], code: fn(i64, i64, i64, i64, i64, i64) -> i64) -> i64 {
| ^^^^^^^
warning: associated function `data_mut` is never used
--> src/compiler/mod.rs:318:8
|
318 | fn data_mut(&mut self) -> &mut [u8] {
| ^^^^^^^^
warning: associated function `data` is never used
--> src/compiler/mod.rs:323:8
|
323 | fn data(&self) -> &[u8] {
| ^^^^
warning: associated function `link` is never used
--> src/compiler/mod.rs:328:8
|
328 | fn link(&mut self, relocs: &[cranelift_codegen::MachReloc], rt_info: &dyn RuntimeInfo) -> Result<(), crate::compiler::ir::CompileErro...
| ^^^^
warning: associated function `finalize` is never used
--> src/compiler/mod.rs:346:8
|
346 | fn finalize(self) -> (*mut u8, usize) {
| ^^^^^^^^
warning: associated function `data_mut` is never used
--> src/compiler/mod.rs:369:8
|
369 | fn data_mut(&mut self) -> &mut [u8] {
| ^^^^^^^^
warning: associated function `data` is never used
--> src/compiler/mod.rs:374:8
|
374 | fn data(&self) -> &[u8] {
| ^^^^
warning: associated function `compile` is never used
--> src/compiler/mod.rs:416:12
|
416 | pub fn compile(&self, rt_info: &dyn RuntimeInfo) -> Result {
| ^^^^^^^
warning: associated function `init` is never used
--> src/compiler/mod.rs:1154:12
|
1154 | pub fn init() -> Self {
| ^^^^
warning: variants `Argument`, `Local`, and `Const` are never constructed
--> src/compiler/mod.rs:17:9
|
16 | pub enum Value {
| ----- variants in this enum
17 | Argument(Argument),
| ^^^^^^^^
18 | Local(Local),
| ^^^^^
19 | Const(Const),
| ^^^^^
|
= note: `Value` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
warning: multiple variants are never constructed
--> src/compiler/mod.rs:34:9
|
33 | pub enum Const {
| ----- variants in this enum
34 | Byte(i8),
| ^^^^
35 | Short(i16),
| ^^^^^
36 | Int(i32),
| ^^^
37 | Long(i64),
| ^^^^
38 | Float(f32),
| ^^^^^
39 | Double(f64),
| ^^^^^^
40 | Null,
| ^^^^
|
= note: `Const` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
warning: variants `Byte` and `Short` are never constructed
--> src/compiler/mod.rs:45:9
|
44 | pub enum ValueType {
| --------- variants in this enum
45 | Byte,
| ^^^^
46 | Short,
| ^^^^^
|
= note: `ValueType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
warning: variant `Const` is never constructed
--> src/compiler/mod.rs:88:9
|
85 | pub enum ValuePool {
| --------- variant in this enum
...
88 | Const,
| ^^^^^
|
= note: `ValuePool` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
warning: struct `FunctionRef` is never constructed
--> src/compiler/mod.rs:120:12
|
120 | struct FunctionRef {
| ^^^^^^^^^^^
warning: multiple variants are never constructed
--> src/compiler/mod.rs:127:9
|
125 | pub enum Instruction {
| ----------- variants in this enum
126 | LoadArg { result: ValueRef, source: ValueRef, id: usize },
127 | ConstInt { result: ValueRef, value: i32 },
| ^^^^^^^^
128 | ConstLong { result: ValueRef, value: i64 },
| ^^^^^^^^^
129 | IntAdd { result: ValueRef, left: ValueRef, right: ValueRef },
| ^^^^^^
130 | IntXor { result: ValueRef, left: ValueRef, right: ValueRef },
| ^^^^^^
131 | AReturn { retval: ValueRef },
| ^^^^^^^
132 | IReturn { retval: ValueRef },
| ^^^^^^^
133 | TypeAdjust { value: ValueRef, current_ty: ValueType, result: ValueRef, new_ty: ValueType },
| ^^^^^^^^^^
134 | GetField { result: ValueRef, object: ValueRef, field_desc: LayoutFieldRef },
| ^^^^^^^^
135 | SetField { target: ValueRef, value: ValueRef, field_desc: LayoutFieldRef },
| ^^^^^^^^
136 | Alloc { result: ValueRef, layout_id: LayoutId },
| ^^^^^
137 | Dealloc { value: ValueRef },
| ^^^^^^^
138 | CallImport { result: Option, name: String, sig: (Vec, Option), args: Vec },
| ^^^^^^^^^^
139 | Return,
| ^^^^^^
|
= note: `Instruction` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
warning: constant `OBJ_HEADER_ZVM_LAYOUT_ID` is never used
--> src/compiler/mod.rs:222:22
|
222 | pub(crate) const OBJ_HEADER_ZVM_LAYOUT_ID: LayoutFieldRef = LayoutFieldRef {
| ^^^^^^^^^^^^^^^^^^^^^^^^
warning: constant `OBJ_HEADER_CLASSFILE_REF` is never used
--> src/compiler/mod.rs:228:22
|
228 | pub(crate) const OBJ_HEADER_CLASSFILE_REF: LayoutFieldRef = LayoutFieldRef {
| ^^^^^^^^^^^^^^^^^^^^^^^^
warning: variants `InvalidLoad`, `InvalidSignature`, and `InvalidTypeAdjust` are never constructed
--> src/compiler/mod.rs:285:9
|
284 | pub enum CompileError {
| ------------ variants in this enum
285 | InvalidLoad(&'static str),
| ^^^^^^^^^^^
286 | InvalidSignature(&'static str),
| ^^^^^^^^^^^^^^^^
287 | InvalidTypeAdjust(ValueRef, ValueType, ValueRef, ValueType),
| ^^^^^^^^^^^^^^^^^
|
= note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
warning: variant `UnsupportedInstruction` is never constructed
--> src/compiler/mod.rs:294:9
|
293 | pub enum TranslationError {
| ---------------- variant in this enum
294 | UnsupportedInstruction(crate::class_file::validated::Instruction),
| ^^^^^^^^^^^^^^^^^^^^^^
warning: associated function `constant` is never used
--> src/compiler/mod.rs:112:16
|
112 | pub fn constant(id: usize) -> Self {
| ^^^^^^^^
warning: associated function `instructions` is never used
--> src/compiler/mod.rs:158:16
|
158 | pub fn instructions(&self) -> &[Instruction] {
| ^^^^^^^^^^^^
warning: associated function `as_usize` is never used
--> src/compiler/mod.rs:167:16
|
167 | pub fn as_usize(&self) -> usize {
| ^^^^^^^^
warning: associated function `new` is never used
--> src/compiler/mod.rs:181:16
|
181 | pub fn new() -> Self {
| ^^^
warning: associated function `add_field` is never used
--> src/compiler/mod.rs:187:16
|
187 | pub fn add_field(&mut self, field_layout: LayoutFieldRef) {
| ^^^^^^^^^
warning: associated function `new` is never used
--> src/compiler/mod.rs:241:16
|
241 | pub fn new() -> Self {
| ^^^
warning: `extern` fn uses type `LayoutId`, which is not FFI-safe
--> src/virtual_machine.rs:2705:43
|
2705 | extern "C" fn zvm_layout_id(&self) -> crate::compiler::ir::LayoutId {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
|
= help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
= note: this struct has unspecified layout
note: the type is defined here
--> src/compiler/mod.rs:164:5
|
164 | pub struct LayoutId(pub usize);
| ^^^^^^^^^^^^^^^^^^^
= note: `#[warn(improper_ctypes_definitions)]` on by default
warning: `extern` fn uses type `Arc`, which is not FFI-safe
--> src/virtual_machine.rs:2714:40
|
2714 | extern "C" fn zvm_vtable(&self) -> Arc {
| ^^^^^^^^^^^^^^^^^^^^ not FFI-safe
|
= help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
= note: this struct has unspecified layout
warning: unused `std::result::Result` that must be used
--> src/compiler/mod.rs:1407:5
|
1407 | / rt_info.declare_layout({
1408 | | let mut layout = ir::Layout::new();
1409 | | layout.add_field(ir::LayoutFieldRef {
1410 | | offset: 0,
... |
1419 | | layout
1420 | | }, "java/lang/Integer".to_string());
| |_______________________________________^
|
= note: this `Result` may be an `Err` variant, which should be handled
= note: `#[warn(unused_must_use)]` on by default
warning: unused `std::result::Result` that must be used
--> src/compiler/mod.rs:1422:9
|
1422 | / rt_info.declare_layout({
1423 | | let mut layout = ir::Layout::new();
1424 | | let mut offset = 0;
1425 | | for f in cls.fields.iter() {
... |
1433 | | layout
1434 | | }, cls.this_class.to_string());
| |______________________________________^
|
= note: this `Result` may be an `Err` variant, which should be handled
warning: `zvm` (lib) generated 93 warnings (run `cargo fix --lib -p zvm` to apply 43 suggestions)
Finished release [optimized] target(s) in 3m 35s
metrics
| name | ci-butactuallyin-spacex86_64 Skylake @ 2.000GHz |
| rust version | rustc 1.68.0-nightly (88c58e3c2 2022-12-26)
|