
running 34 tests
test wasm::alloc::tests::test_align_up ... ok
test wasm::alloc::tests::test_alloc_type_signature ... ok
test wasm::alloc::tests::test_bump_allocator_default ... ok
test wasm::alloc::tests::test_bump_allocator_new ... ok
test wasm::alloc::tests::test_build_alloc_function ... ok
test wasm::alloc::tests::test_constants ... ok
test wasm::alloc::tests::test_emit_alloc_function_not_empty ... ok
test wasm::alloc::tests::test_emit_globals ... ok
test wasm::alloc::tests::test_emit_globals_with_end ... ok
test wasm::alloc::tests::test_emit_memory_section ... ok
test wasm::compiler::tests::test_compile_non_function_declaration_fails ... ok
test wasm::compiler::tests::test_compile_function_with_literals ... ok
test wasm::compiler::tests::test_compile_simple_function ... ok
test wasm::compiler::tests::test_compiler_chaining ... ok
test wasm::compiler::tests::test_compiler_default ... ok
test wasm::compiler::tests::test_compiler_new ... ok
test wasm::compiler::tests::test_compiler_with_debug_info ... ok
test wasm::compiler::tests::test_compiler_with_optimization ... ok
test wasm::layout::tests::test_align_up ... ok
test wasm::layout::tests::test_empty_gene ... ok
test wasm::layout::tests::test_field_layout_constructors ... ok
test wasm::layout::tests::test_gc_descriptor ... ok
test wasm::layout::tests::test_gene_inheritance_layout ... ok
test wasm::layout::tests::test_gene_inheritance_unknown_parent ... ok
test wasm::layout::tests::test_gene_layout_registry ... ok
test wasm::layout::tests::test_mixed_types_with_padding ... ok
test wasm::layout::tests::test_nested_gene_layout ... ok
test wasm::layout::tests::test_reference_type_layout ... ok
test wasm::layout::tests::test_simple_point_layout ... ok
test wasm::layout::tests::test_wasm_field_type_alignments ... ok
test wasm::layout::tests::test_wasm_field_type_sizes ... ok
test wasm::runtime::tests::test_runtime_new ... ok
test wasm::runtime::tests::test_runtime_default ... ok
test wasm::runtime::tests::test_load_invalid_wasm ... ok

test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 411 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 136 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 54 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 8 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 3 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 18 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 36 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 31 filtered out; finished in 0.00s


running 2 tests
test test_compile_simple_gene_to_wasm ... ok
test test_compile_function_to_wasm ... ok

test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 30 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 5 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 41 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 30 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 73 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 27 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 39 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 24 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 120 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 58 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 77 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 118 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 61 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 80 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 34 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 17 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 46 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 5 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 44 filtered out; finished in 0.00s


running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 27 filtered out; finished in 0.00s


running 2 tests
Match AST:
Function(
    FunctionDecl {
        visibility: Private,
        purity: Pure,
        name: "classify",
        type_params: None,
        params: [
            FunctionParam {
                name: "x",
                type_ann: Named(
                    "i64",
                ),
            },
        ],
        return_type: Some(
            Named(
                "i64",
            ),
        ),
        body: [
            Expr(
                Match {
                    scrutinee: Identifier(
                        "x",
                    ),
                    arms: [
                        MatchArm {
                            pattern: Literal(
                                Int(
                                    0,
                                ),
                            ),
                            guard: None,
                            body: Literal(
                                Int(
                                    100,
                                ),
                            ),
                        },
                        MatchArm {
                            pattern: Literal(
                                Int(
                                    1,
                                ),
                            ),
                            guard: None,
                            body: Literal(
                                Int(
                                    200,
                                ),
                            ),
                        },
                        MatchArm {
                            pattern: Wildcard,
                            guard: None,
                            body: Literal(
                                Int(
                                    300,
                                ),
                            ),
                        },
                    ],
                },
            ),
        ],
        exegesis: "",
        span: Span {
            start: 1,
            end: 106,
            line: 2,
            column: 1,
        },
    },
)
Parsed AST:
Function(
    FunctionDecl {
        visibility: Private,
        purity: Pure,
        name: "max",
        type_params: None,
        params: [
            FunctionParam {
                name: "a",
                type_ann: Named(
                    "i64",
                ),
            },
            FunctionParam {
                name: "b",
                type_ann: Named(
                    "i64",
                ),
            },
        ],
        return_type: Some(
            Named(
                "i64",
            ),
        ),
        body: [
            Expr(
                If {
                    condition: Binary {
                        left: Identifier(
                            "a",
                        ),
                        op: Gt,
                        right: Identifier(
                            "b",
                        ),
                    },
                    then_branch: Block {
                        statements: [
                            Return(
                                Some(
                                    Identifier(
                                        "a",
                                    ),
                                ),
                            ),
                        ],
                        final_expr: None,
                    },
                    else_branch: None,
                },
            ),
            Return(
                Some(
                    Identifier(
                        "b",
                    ),
                ),
            ),
        ],
        exegesis: "",
        span: Span {
            start: 1,
            end: 86,
            line: 2,
            column: 1,
        },
    },
)

WASM size: 52 bytes
WASM hex dump:
00 61 73 6d 01 00 00 00 01 07 01 60 02 7e 7e 01 
7e 03 02 01 00 07 07 01 03 6d 61 78 00 00 0a 14 
01 12 01 01 7e 20 00 20 01 55 04 40 20 00 0f 0b 
20 01 0f 0b 

Match WASM size: 73 bytes
WASM hex dump:
00 61 73 6d 01 00 00 00 01 06 01 60 01 7e 01 7e 
03 02 01 00 07 0c 01 08 63 6c 61 73 73 69 66 79 
00 00 0a 25 01 23 01 02 7e 20 00 21 02 20 02 42 
00 51 04 7e 42 e4 00 05 20 02 42 01 51 04 7e 42 
c8 01 05 42 ac 02 0b 0b 0b 
WasmRuntime load: SUCCESS
WasmRuntime load: SUCCESS
test debug_match_wasm ... ok
test debug_control_flow_wasm ... ok

test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 2 filtered out; finished in 0.00s


running 19 tests
test test_wasm_compilation_performance ... ignored
test test_wasm_compiler_default ... ok
test test_wasm_compiler_error_message ... ok
test test_wasm_compiler_with_optimization ... ok
test test_wasm_error_display ... ok
test test_wasm_empty_module ... ok
test test_wasm_error_from_io ... ok
test test_wasm_invalid_version ... ok
test test_wasm_invalid_magic_number ... ok
test test_wasm_error_new ... ok
test test_wasm_magic_number ... ok
test test_wasm_runtime_multiple_instances ... ok
test test_wasm_runtime_new ... ok
test test_wasm_truncated_module ... ok
test test_wasm_version ... ok
test test_wasm_call_nonexistent_function ... ok
test test_wasm_load_minimal_module ... ok
test test_wasm_module_with_function ... ok
test test_wasm_runtime_many_modules ... ok

test result: ok. 18 passed; 0 failed; 1 ignored; 0 measured; 13 filtered out; finished in 0.00s


running 5 tests
test tests::test_validate_wasm_bytes_empty ... ok
test tests::test_validate_wasm_bytes_invalid_version ... ok
test tests::test_validate_wasm_bytes_too_short ... ok
test tests::test_validate_wasm_bytes_valid ... ok
test tests::test_validate_wasm_bytes_invalid_magic ... ok

test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.00s

