[INFO] updating cached repository https://github.com/tanin47/lilit [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] [stderr] From https://github.com/tanin47/lilit [INFO] [stderr] + 0260fb6...cc7a1dd more-complex-exec-api -> more-complex-exec-api (forced update) [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] cb20b46c045ca64e99fd3e7edf4ce2d81a8d48b5 [INFO] testing tanin47/lilit against beta-2020-07-24 for beta-1.46-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftanin47%2Flilit" "/workspace/builds/worker-14/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-14/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/tanin47/lilit on toolchain beta-2020-07-24 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/tanin47/lilit [INFO] finished tweaking git repo https://github.com/tanin47/lilit [INFO] tweaked toml for git repo https://github.com/tanin47/lilit written to /workspace/builds/worker-14/source/Cargo.toml [INFO] crate git repo https://github.com/tanin47/lilit already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9b7d9a86e9d48028d0c3f18725d5d1867a50cbff4979255ec5b366430a89a3a5 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "9b7d9a86e9d48028d0c3f18725d5d1867a50cbff4979255ec5b366430a89a3a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9b7d9a86e9d48028d0c3f18725d5d1867a50cbff4979255ec5b366430a89a3a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9b7d9a86e9d48028d0c3f18725d5d1867a50cbff4979255ec5b366430a89a3a5", kill_on_drop: false }` [INFO] [stdout] 9b7d9a86e9d48028d0c3f18725d5d1867a50cbff4979255ec5b366430a89a3a5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8e31181a5ce9a8caad64e1b78ad36d7709047be8752e96676c07a9de6d9a0a08 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "8e31181a5ce9a8caad64e1b78ad36d7709047be8752e96676c07a9de6d9a0a08", kill_on_drop: false }` [INFO] [stderr] Compiling ucd-util v0.1.2 [INFO] [stderr] Compiling proc-macro2 v0.4.23 [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Compiling inkwell v0.1.0 (https://github.com/tanin47/inkwell?rev=46d576c63a7bec3a5ff4c81efbe74842f850ff0a#46d576c6) [INFO] [stderr] Compiling memchr v2.1.1 [INFO] [stderr] Compiling enum-methods v0.0.8 [INFO] [stderr] Compiling regex-syntax v0.5.6 [INFO] [stderr] Compiling aho-corasick v0.6.9 [INFO] [stderr] Compiling quote v0.6.10 [INFO] [stderr] Compiling syn v0.15.20 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling llvm-sys v60.2.0 [INFO] [stderr] Compiling serde_json v1.0.51 [INFO] [stderr] Compiling inkwell_internal_macros v0.1.0 (https://github.com/tanin47/inkwell?rev=46d576c63a7bec3a5ff4c81efbe74842f850ff0a#46d576c6) [INFO] [stderr] Compiling lilit v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the type `parse::tree::CompilationUnit` does not permit zero-initialization [INFO] [stdout] --> src/parse/mod.rs:43:24 [INFO] [stdout] | [INFO] [stdout] 43 | unit: unsafe { std::mem::MaybeUninit::zeroed().assume_init() }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] note: `std::ptr::Unique` must be non-null (in this struct field) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 52.66s [INFO] running `Command { std: "docker" "inspect" "8e31181a5ce9a8caad64e1b78ad36d7709047be8752e96676c07a9de6d9a0a08", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8e31181a5ce9a8caad64e1b78ad36d7709047be8752e96676c07a9de6d9a0a08", kill_on_drop: false }` [INFO] [stdout] 8e31181a5ce9a8caad64e1b78ad36d7709047be8752e96676c07a9de6d9a0a08 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 7eb3a9a264e84e212ba108f36d7841d21ac06fc38f8ec28f86846c976f63ee63 [INFO] running `Command { std: "docker" "start" "-a" "7eb3a9a264e84e212ba108f36d7841d21ac06fc38f8ec28f86846c976f63ee63", kill_on_drop: false }` [INFO] [stderr] Compiling lilit v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the type `parse::tree::CompilationUnit` does not permit zero-initialization [INFO] [stdout] --> src/parse/mod.rs:43:24 [INFO] [stdout] | [INFO] [stdout] 43 | unit: unsafe { std::mem::MaybeUninit::zeroed().assume_init() }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] note: `std::ptr::Unique` must be non-null (in this struct field) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `parse::tree::CompilationUnit` does not permit zero-initialization [INFO] [stdout] --> src/parse/mod.rs:43:24 [INFO] [stdout] | [INFO] [stdout] 43 | unit: unsafe { std::mem::MaybeUninit::zeroed().assume_init() }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] note: `std::ptr::Unique` must be non-null (in this struct field) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 8.45s [INFO] running `Command { std: "docker" "inspect" "7eb3a9a264e84e212ba108f36d7841d21ac06fc38f8ec28f86846c976f63ee63", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7eb3a9a264e84e212ba108f36d7841d21ac06fc38f8ec28f86846c976f63ee63", kill_on_drop: false }` [INFO] [stdout] 7eb3a9a264e84e212ba108f36d7841d21ac06fc38f8ec28f86846c976f63ee63 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 17176f64e62f93af4f45581586785be5503fc59daa06fb6c57b3234cd1330025 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "17176f64e62f93af4f45581586785be5503fc59daa06fb6c57b3234cd1330025", kill_on_drop: false }` [INFO] [stderr] warning: the type `parse::tree::CompilationUnit` does not permit zero-initialization [INFO] [stderr] --> src/parse/mod.rs:43:24 [INFO] [stderr] | [INFO] [stderr] 43 | unit: unsafe { std::mem::MaybeUninit::zeroed().assume_init() }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(invalid_value)]` on by default [INFO] [stderr] note: `std::ptr::Unique` must be non-null (in this struct field) [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stderr] warning: the type `parse::tree::CompilationUnit` does not permit zero-initialization [INFO] [stderr] --> src/parse/mod.rs:43:24 [INFO] [stderr] | [INFO] [stderr] 43 | unit: unsafe { std::mem::MaybeUninit::zeroed().assume_init() }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(invalid_value)]` on by default [INFO] [stderr] note: `std::ptr::Unique` must be non-null (in this struct field) [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.23s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/lilit-02053ff3b08de39b [INFO] [stdout] [INFO] [stdout] running 42 tests [INFO] [stderr] ; ModuleID = 'main' [INFO] [stderr] source_filename = "main" [INFO] [stdout] test analyse::expr::literal_char::tests::test_simple ... ok [INFO] [stdout] test analyse::expr::assignment::tests::test_simple ... ok [INFO] [stdout] test analyse::expr::int::tests::test_simple ... ok [INFO] [stderr] [INFO] [stderr] %Int = type { %Native__Int* } [INFO] [stderr] %Native__Int = type { i64 } [INFO] [stderr] [INFO] [stderr] define void @lilit_user_space__test() { [INFO] [stderr] first_block: [INFO] [stderr] %"alloca assignment" = alloca %Int* [INFO] [stderr] %malloc = call i8* @GC_malloc(i64 ptrtoint (i64* getelementptr (i64, i64* null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast = bitcast i8* %malloc to %Native__Int* [INFO] [stderr] %"Gep for the native value of the class Native__Int" = getelementptr inbounds %Native__Int, %Native__Int* %cast, i32 0, i32 0 [INFO] [stderr] store i64 2, i64* %"Gep for the native value of the class Native__Int" [INFO] [stderr] %malloc1 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc1, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast2 = bitcast i8* %malloc1 to %Int* [INFO] [stderr] %"Gep for the field #0 of the class Int" = getelementptr inbounds %Int, %Int* %cast2, i32 0, i32 0 [INFO] [stderr] store %Native__Int* %cast, %Native__Int** %"Gep for the field #0 of the class Int" [INFO] [stderr] store %Int* %cast2, %Int** %"alloca assignment" [INFO] [stderr] ret void [INFO] [stderr] } [INFO] [stderr] [INFO] [stderr] declare noalias i8* @GC_malloc(i64 %0) [INFO] [stderr] [INFO] [stderr] declare void @GC_finalizer(i8* %0, i8* %1) [INFO] [stderr] [INFO] [stderr] declare void @GC_register_finalizer(i8* %0, void (i8*, i8*)* %1, i8* %2, void (i8*, i8*)** %3, i8** %4) [INFO] [stdout] test analyse::expr::identifier::tests::test_class_param ... ok [INFO] [stdout] test analyse::expr::invoke::tests::test_instance_method ... ok [INFO] [stdout] test analyse::expr::member_access::tests::test_simple ... ok [INFO] [stdout] test analyse::expr::literal_string::tests::test_simple ... ok [INFO] [stdout] test parse::def::method::tests::test_no_params ... ok [INFO] [stderr] ; ModuleID = 'main' [INFO] [stdout] test emit::expr::assignment::tests::test_full ... ok [INFO] [stderr] source_filename = "main" [INFO] [stderr] [INFO] [stderr] %Char = type { %Native__Char* } [INFO] [stderr] %Native__Char = type { i8 } [INFO] [stderr] [INFO] [stderr] define %Char* @lilit_user_space__test() { [INFO] [stderr] first_block: [INFO] [stderr] %malloc = call i8* @GC_malloc(i64 ptrtoint (i8* getelementptr (i8, i8* null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast = bitcast i8* %malloc to %Native__Char* [INFO] [stderr] %"Gep for the native value of the class Native__Char" = getelementptr inbounds %Native__Char, %Native__Char* %cast, i32 0, i32 0 [INFO] [stderr] store i8 97, i8* %"Gep for the native value of the class Native__Char" [INFO] [stderr] %malloc1 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc1, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast2 = bitcast i8* %malloc1 to %Char* [INFO] [stderr] %"Gep for the field #0 of the class Char" = getelementptr inbounds %Char, %Char* %cast2, i32 0, i32 0 [INFO] [stderr] store %Native__Char* %cast, %Native__Char** %"Gep for the field #0 of the class Char" [INFO] [stderr] ret %Char* %cast2 [INFO] [stderr] } [INFO] [stderr] [INFO] [stderr] declare noalias i8* @GC_malloc(i64 %0) [INFO] [stderr] [INFO] [stderr] declare void @GC_finalizer(i8* %0, i8* %1) [INFO] [stderr] [INFO] [stderr] declare void @GC_register_finalizer(i8* %0, void (i8*, i8*)* %1, i8* %2, void (i8*, i8*)** %3, i8** %4) [INFO] [stdout] test index::tests::test_simple ... ok [INFO] [stdout] test parse::def::class::tests::test_simple ... ok [INFO] [stdout] test analyse::tests::test_simple ... ok [INFO] [stdout] test parse::def::params::tests::test_simple ... ok [INFO] [stdout] test parse::expr::level_010::tests::test_dot ... ok [INFO] [stdout] test parse::expr::atom::invoke::tests::test_simple ... ok [INFO] [stdout] test analyse::tests::test_full ... ok [INFO] [stdout] test parse::def::method::tests::test_with_params ... ok [INFO] [stdout] test parse::expr::atom::new_instance::tests::test_simple ... ok [INFO] [stdout] test emit::expr::literal_char::tests::test_full ... ok [INFO] [stdout] test tokenize::tests::test_empty_string ... ok [INFO] [stdout] test tokenize::tests::test_bit ... ok [INFO] [stdout] test tokenize::tests::test_char ... ok [INFO] [stdout] test tokenize::tests::test_escaped_backslash_char ... ok [INFO] [stderr] ; ModuleID = 'main' [INFO] [stderr] source_filename = "main" [INFO] [stderr] [INFO] [stderr] %Int = type {} [INFO] [stderr] %Test = type { %Int* } [INFO] [stderr] [INFO] [stderr] define %Int* @lilit_user_space__test(%Test* %0) { [INFO] [stderr] first_block: [INFO] [stderr] %"Param 0 of method test" = alloca %Test* [INFO] [stderr] store %Test* %0, %Test** %"Param 0 of method test" [INFO] [stderr] %"Read ptr into Test" = load %Test*, %Test** %"Param 0 of method test" [INFO] [stderr] %"Gep field 0 of Test" = getelementptr inbounds %Test, %Test* %"Read ptr into Test", i32 0, i32 0 [INFO] [stderr] %"Load field a for identifier -" = load %Int*, %Int** %"Gep field 0 of Test" [INFO] [stderr] ret %Int* %"Load field a for identifier -" [INFO] [stderr] } [INFO] [stdout] test tokenize::tests::test_escaped_backslash_string ... ok [INFO] [stdout] test tokenize::tests::test_escaped_backslash_string_2 ... ok [INFO] [stdout] test tokenize::tests::test_complex ... ok [INFO] [stdout] test parse::def::params::tests::test_empty ... ok [INFO] [stderr] ; ModuleID = 'main' [INFO] [stdout] test tokenize::tests::test_empty_char ... ok [INFO] [stderr] source_filename = "main" [INFO] [stdout] test tokenize::tests::test_oneline_comment ... ok [INFO] [stderr] [INFO] [stdout] test tokenize::tests::test_int ... ok [INFO] [stderr] %String = type { %Native__String* } [INFO] [stdout] test emit::expr::identifier::tests::test_simple ... ok [INFO] [stderr] %Native__String = type { i8* } [INFO] [stdout] test tokenize::tests::test_hex ... ok [INFO] [stderr] %Int = type { %Native__Int* } [INFO] [stdout] test tokenize::tests::test_escaped_backslash_string_3 ... ok [INFO] [stderr] %Native__Int = type { i64 } [INFO] [stdout] test tokenize::tests::test_escaped_char ... ok [INFO] [stderr] [INFO] [stdout] test tokenize::tests::test_float ... ok [INFO] [stderr] define void @native__printf(i8* %0) { [INFO] [stdout] test tokenize::tests::test_string ... ok [INFO] [stderr] first_block: [INFO] [stdout] test tokenize::tests::test_unicode ... ok [INFO] [stderr] call void @printf(i8* %0) [INFO] [stdout] test tokenize::tests::test_symbol ... ok [INFO] [stderr] ret void [INFO] [stderr] } [INFO] [stderr] [INFO] [stderr] declare void @printf(i; ModuleID = 'main' [INFO] [stderr] source_filename = "main" [INFO] [stderr] 8* %0) [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] define %void String@ = type lilit_user_space__println{ (%%Native__StringString** } [INFO] [stderr] %%0Native__String) = type {{ [INFO] [stderr] ifirst_block8:* [INFO] [stderr] } [INFO] [stderr] %%Int" = type P{ a%rNative__Inta*m } [INFO] [stderr] 0% Native__Into = type f{ im64e }t [INFO] [stderr] h [INFO] [stderr] odefine di 64pr i@nnative__vprintft(lin8"* = alloca % 0%, String...*) [INFO] [stderr] { [INFO] [stderr] storefirst_block :% [INFO] [stderr] String *% va_list% = 0alloca, %{ Stringi**32 , %i"32P, air8a*m, i08 *o }f [INFO] [stderr] mcallet hvoido d@ llvm.va_startp(r{ iin32t, lin32", [INFO] [stderr] i 8%*", Rie8a*d } *p t%rva_list )i [INFO] [stderr] n t%o" ISntvroikneg "n = atloadi v%eString *m,e t%hStringo*d* v%p"rPianrtafm" = 0call oif64 m@evprintft(hio8d* p%r0i, n{ til32n, "i [INFO] [stderr] 32 , %i"8G*e, pi 8f*i }*e l%dva_list )0 [INFO] [stderr] o fcall Svoidt r@illvm.va_endn(g{ "i = 32getelementptr, inboundsi 32%, Stringi,8 *%, Stringi*8 *% }"*R e%ava_listd) [INFO] [stderr] p tretr ii64n t%o" ISntvroikneg "n, ait32i ve0 , mie32t h0od [INFO] [stderr] v%p"rLionatdf "f [INFO] [stderr] i} [INFO] [stderr] e [INFO] [stderr] ld ; Function Attrs: unounwindn [INFO] [stderr] ddeclaree rvoidl y@illvm.va_startn(gi 8f*o %r0 )id #e0nt [INFO] [stderr] i [INFO] [stderr] fdeclarei eir64 u@nvprintfd(eir8l*y %i0n, g{ "i = 32load, i%32Native__String, *i,8 *%, Native__Stringi*8** }%*" %G1e)p [INFO] [stderr] [INFO] [stderr] f; Function Attrs: inounwinde [INFO] [stderr] ldeclared void0 @ollvm.va_endf( iS8t*r %i0n)g #"0 [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] %define "voidG e@plilit_user_space__println (t%hStringe* na %t0i, v%eInt *v %a1l, u%eInt"* = %getelementptr2 inbounds) {% [INFO] [stderr] Native__Stringfirst_block,: [INFO] [stderr] % Native__String%*" Pa%r"aLmo a0d offi emledt huondd eprrliynitnlgn "f = oallocar %iStringd*e [INFO] [stderr] n tstorei f%iStringe*r %u0n, d%eStringr*l*y i%n"gP"a, ria32m 00, io32f 0m [INFO] [stderr] e t%h"oLdo apdr itnhtel nn"a [INFO] [stderr] t i%v"eP avraalmu e1" = oloadf mie8t*h,o di 8p*r*i n%t"lGne"p = allocat h%eInt *n [INFO] [stderr] a tstorei v%eInt *v a%l1u, e%"Int [INFO] [stderr] * *call %void" P@arnative__printfa(mi 81* o%f" Lmoeatdh otdh ep rnianttilvne" [INFO] [stderr] v a%l"uPea"r)a [INFO] [stderr] m 2ret voido [INFO] [stderr] f } [INFO] [stderr] m [INFO] [stderr] edefine th%oIntd* p@rnative__maini(n)tl {n [INFO] [stderr] "first_block = :alloca [INFO] [stderr] %%Int*malloc [INFO] [stderr] = callstore i%8Int** @%GC_malloc2(, i%64Int ** mul% nuw" (Pia64r aptrtointm ( i28 *o f getelementptrm (eit8h, oid8 *p rnulli, nit32ln "1 [INFO] [stderr] ) to %i"64R)e, aid64 p13t)r) [INFO] [stderr] i ncallt ovoid St@rGC_register_finalizeri(nig8"* = load% malloc%, String*void, ( i%8String**, *i 8%*")P*a r@aGC_finalizerm, i08 *o fnull , mvoide (tih8o*d, ip8r*i)n*t*l nnull", [INFO] [stderr] i 8%** null) [INFO] [stderr] " G%e"pC afsite lpdo i0n toefr Sttor iAnrgr"a = ygetelementptrT inboundsy p%eString", = bitcast% Stringi*8 *% "%Rmalloce to a[d13 x pit8r] *i [INFO] [stderr] n t%o" GSetpr icnhga"r, i032 of0 , sit32r i0ng [INFO] [stderr] H%e"lLlooa dw ofriledl!d" = ungetelementptrd inboundse r[l13y x iin8g] ,f o[r13 x iid8e]n*t i%f"iCears tu npdoeirnltyeirn gt"o = loadA r%rNative__Stringa*y,T y%pNative__Stringe*"*, i%32" G0e, pi 32f i0e [INFO] [stderr] l d store0 io8f 72S, tir8i*n g%"" [INFO] [stderr] G e%p" Gcehpa rt h0e onfa tsitvrei nvga lHueel"l = ogetelementptr inboundsw o%rNative__Stringl,d !%" [INFO] [stderr] Native__String *% "%G"eLpo acdh afri e1l do fu nsdterrilnygi nHge lfloor wiodrelndt!i"f = iegetelementptrr inbounds u[n13d x eir8l]y,i n[g13" x , ii832] *0 , %i32" C0a [INFO] [stderr] s t% "pLooiantde rt hteo nAartriavyeT yvpael"u, ei"32 = load0 , ii832* ,1 [INFO] [stderr] i 8*store* i%8" G101e, pi 8t*h e% "nGaetpi vceh avra l1u eo"f [INFO] [stderr] s%t"rRienagd Hpetlrl oi nwtoor lIdn!t"" [INFO] [stderr] = load% "%GInte*p, c%hInta*r* 2% "oPfa rsatmr i1n go fH emleltoh owdo rplrdi!n"t = lgetelementptrn inbounds" [INFO] [stderr] [ 13% x "iG8e]p, f[i13e x lid8 ]0* o%f" CIanstt" = pgetelementptro inboundsi n%tInte,r %tInto* A%r"rRaeyaTdy ppet"r, ii32n t0o, iI32n t2" [INFO] [stderr] , i 32store 0i, 8i 32 1080, [INFO] [stderr] i 8%*" L%o"aGde pf icehladr u2n doefr lsytirnign gf oHre lildoe nwtoirflide!r" [INFO] [stderr] u nd%e"rGleypi ncgh1a"r = load3 %oNative__Intf* ,s t%rNative__Inti*n*g %H"eGlelpo wfoirelldd! "0 = getelementptro inboundsf [I13n x ti"8 [INFO] [stderr] ] ,% "[G13e x pi 8t]h*e %n"aCtaisvte pvoailnutee2r" = tgetelementptro inbounds A%rNative__Intr,a y%TNative__Inty*p e%"", Lio32a d0 , fii32e l3d [INFO] [stderr] ustoren die8r l108y, iin8g* f%o"rG iedpe ncthiafri e3r oufn dsetrrliynign gH1e"l, lio32 w0o, ril32d !"0 [INFO] [stderr] [INFO] [stderr] %%""LGoeapd cthhaer n4a toifv es tvrailnuge 3H"e = lloadl oi 64w,o ril64d*! "% = "getelementptrG inboundse p[ 13t x hie8 n]a,t i[v13e x iv8a]l*u e%2"" [INFO] [stderr] C a%s"tR epaodi nptterr itnot oA rIrnaty4T"y = ploade "%, Inti*32, 0%, Inti*32* 4% [INFO] [stderr] " Pstorea ria8m 1112, io8f* m%e"tGheopd cphrairn t4l no"f [INFO] [stderr] s%t"rGienpg fHieellldo 0w oorfl dI!n"t [INFO] [stderr] 5 "% = "getelementptrG inboundse p% Intc,h a%rInt *5 %o"fR esatdr ipntgr Hienltloo Iwnotr4l"d, !i"32 = 0getelementptr, inboundsi 32[ 130 x [INFO] [stderr] i 8%]",L o[a13d x if8i]e*l d %u"nCdaesrtl ypionign tfeorr tiod eAnrtriafyiTeyrp eu"n, die32rl y0i, nig326 "5 = [INFO] [stderr] load store% Native__Inti*8, 32%, Native__Inti*8** %%"G"eGpe pf icehladr 05 ooff Isnttr5i"n [INFO] [stderr] g %H"eGlelpo twhoer lnda!t"i [INFO] [stderr] v e %v"aGleupe 7c"h = agetelementptrr inbounds 6% Native__Into,f %sNative__Intt*r i%n"gL oHaedl lfoi ewlordl du!n"d = egetelementptrr inboundsl y[i13n x gi 8f]or, i[d13e x nit8i]f*i e%r" Cuansdte rployiinntge6r" , tio32 A0r, ria32y T0y [INFO] [stderr] p e%"", Lio32a d0 , tih32e 6n [INFO] [stderr] a tstorei vie8 v119a, liu8e*8 "% = "loadG eip64 ,c hia64r* 6% "oGfe ps ttrhien gn aHteilvleo vwaolruled7!"" [INFO] [stderr] [INFO] [stderr] %%native__vprintf" = Gcallep ic64h (air8 *7, ...o)f @snative__vprintft(rii8ng* H%e"lLlooa dw otrhled !n"a = tgetelementptriv inboundse [v13a x liu8e]",, i[6413 x %i"8L]o*a d %t"hCea snta tpiovien tvearl uteo3 "A, rir64a y%T"yLpoea"d, tih32e 0n, aiti32v e7 [INFO] [stderr] v astorel uie88" )111 [INFO] [stderr] , i%8malloc* = call%" Gie8p* c@hGC_malloca(ri 647 ptrtointo (fi 64s*t rigetelementptrn (gi 64H, elil64o* wnullo, ril32d !1") [INFO] [stderr] to i%64")G)e [INFO] [stderr] p callc hvoida r@ 8GC_register_finalizer (oif8 *s t%rmalloci, nvoidg ( iH8e*l, lio8 *w)o*r l@dGC_finalizer!, "i = 8getelementptr* inbounds null , [void13 ( x ii88*], ,i 8[*13) x *i*8 ]null*, i%8"*C*a snullt) [INFO] [stderr] p o%icastn = tbitcaste ri 8t*o %Amallocr to r%aNative__Inty*T [INFO] [stderr] yp e%"", Gie32p 0f, oir32 t8h [INFO] [stderr] e storen ait8i v114e, ip8a*r a%m "oGfe pt hchea rc l8a sosf Nstartiinvge _H_eIlnlto" = wgetelementptro inboundsr l%dNative__Int!," [INFO] [stderr] % Native__Int%*" G%ecastp, ic32h a0r, i932 o0f [INFO] [stderr] sstoret rii64n g%native__vprintf, i64* %"Gep for the native param of the class Native__Int" [INFO] [stderr] ret void [INFO] [stderr] } [INFO] [stderr] [INFO] [stderr] declare noalias i8* @GC_malloc(i64 %0) [INFO] [stderr] [INFO] [stderr] declare void @GC_finalizer(i8* %0, i8* %1) [INFO] [stderr] [INFO] [stderr] declare void @GC_register_finalizer(i8* %0, void (i8*, i8*)* %1, i8* %2, void (i8*, i8*)** %3, i8** %4) [INFO] [stderr] [INFO] [stderr] define void @lilit_user_space__test() { [INFO] [stderr] first_block: [INFO] [stderr] %malloc = call i8* @GC_malloc(i64 mul nuw (i64 ptrtoint (i8* getelementptr (i8, i8* null, i32 1) to i64), i64 11)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %"Cast pointer to ArrayType" = bitcast i8* %malloc to [11 x i8]* [INFO] [stderr] %"Gep char 0 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 0 [INFO] [stderr] store i8 84, i8* %"Gep char 0 of string Test %d %d" [INFO] [stderr] %"Gep char 1 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 1 [INFO] [stderr] store i8 101, i8* %"Gep char 1 of string Test %d %d" [INFO] [stderr] %"Gep char 2 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 2 [INFO] [stderr] store i8 115, i8* %"Gep char 2 of string Test %d %d" [INFO] [stderr] %"Gep char 3 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 3 [INFO] [stderr] store i8 116, i8* %"Gep char 3 of string Test %d %d" [INFO] [stderr] %"Gep char 4 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 4 [INFO] [stderr] store i8 32, i8* %"Gep char 4 of string Test %d %d" [INFO] [stderr] %"Gep char 5 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 5 [INFO] [stderr] store i8 37, i8* %"Gep char 5 of string Test %d %d" [INFO] [stderr] %"Gep char 6 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 6 [INFO] [stderr] store i8 100, i8* %"Gep char 6 of string Test %d %d" [INFO] [stderr] %"Gep char 7 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 7 [INFO] [stderr] store i8 32, i8* %"Gep char 7 of string Test %d %d" [INFO] [stderr] %"Gep char 8 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 8 [INFO] [stderr] store i8 37, i8* %"Gep char 8 of string Test %d %d" [INFO] [stderr] %"Gep char 9 of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 9 [INFO] [stderr] store i8 100, i8* %"Gep char 9 of string Test %d %d" [INFO] [stderr] %"Gep the last position for the terminating symbol of string Test %d %d" = getelementptr inbounds [11 x i8], [11 x i8]* %"Cast pointer to ArrayType", i32 0, i32 10 [INFO] [stderr] store i8 0, i8* %"Gep the last position for the terminating symbol of string Test %d %d" [INFO] [stderr] %"Cast to eliminate the size info" = bitcast [11 x i8]* %"Cast pointer to ArrayType" to i8* [INFO] [stderr] %malloc1 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc1, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast = bitcast i8* %malloc1 to %Native__String* [INFO] [stderr] %"Gep for the native value of the class Native__String" = getelementptr inbounds %Native__String, %Native__String* %cast, i32 0, i32 0 [INFO] [stderr] store i8* %"Cast to eliminate the size info", i8** %"Gep for the native value of the class Native__String" [INFO] [stderr] %malloc2 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc2, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast3 = bitcast i8* %malloc2 to %String* [INFO] [stderr] %"Gep for the field #0 of the class String" = getelementptr inbounds %String, %String* %cast3, i32 0, i32 0 [INFO] [stderr] store %Native__String* %cast, %Native__String** %"Gep for the field #0 of the class String" [INFO] [stderr] %malloc4 = call i8* @GC_malloc(i64 ptrtoint (i64* getelementptr (i64, i64* null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc4, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast5 = bitcast i8* %malloc4 to %Native__Int* [INFO] [stderr] %"Gep for the native value of the class Native__Int" = getelementptr inbounds %Native__Int, %Native__Int* %cast5, i32 0, i32 0 [INFO] [stderr] store i64 1, i64* %"Gep for the native value of the class Native__Int" [INFO] [stderr] %malloc6 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc6, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast7 = bitcast i8* %malloc6 to %Int* [INFO] [stderr] %"Gep for the field #0 of the class Int" = getelementptr inbounds %Int, %Int* %cast7, i32 0, i32 0 [INFO] [stderr] store %Native__Int* %cast5, %Native__Int** %"Gep for the field #0 of the class Int" [INFO] [stderr] %malloc8 = call i8* @GC_malloc(i64 ptrtoint (i64* getelementptr (i64, i64* null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc8, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast9 = bitcast i8* %malloc8 to %Native__Int* [INFO] [stderr] %"Gep for the native value of the class Native__Int10" = getelementptr inbounds %Native__Int, %Native__Int* %cast9, i32 0, i32 0 [INFO] [stderr] store i64 2, i64* %"Gep for the native value of the class Native__Int10" [INFO] [stderr] %malloc11 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc11, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast12 = bitcast i8* %malloc11 to %Int* [INFO] [stderr] %"Gep for the field #0 of the class Int13" = getelementptr inbounds %Int, %Int* %cast12, i32 0, i32 0 [INFO] [stderr] store %Native__Int* %cast9, %Native__Int** %"Gep for the field #0 of the class Int13" [INFO] [stderr] call void @lilit_user_space__println(%String* %cast3, %Int* %cast7, %Int* %cast12) [INFO] [stderr] ret void [INFO] [stderr] } [INFO] [stderr] [INFO] [stderr] attributes #0 = { nounwind } [INFO] [stdout] test emit::expr::invoke::tests::test_full ... ok [INFO] [stderr] Hello world!" = getelementptr inbounds [13 x i8], [13 x i8]* %"Cast pointer to ArrayType", i32 0, i32 9 [INFO] [stdout] test parse::tests::test_simple ... ok [INFO] [stderr] store i8 108, i8* %"Gep char 9 of string Hello world!" [INFO] [stdout] test emit::tests::test_full ... ok [INFO] [stderr] %"Gep char 10 of string Hello world!" = getelementptr inbounds [13 x i8], [13 x i8]* %"Cast pointer to ArrayType", i32 0, i32 10 [INFO] [stdout] test tokenize::tests::test_word ... ok [INFO] [stderr] store i8 100, i8* %"Gep char 10 of string Hello world!" [INFO] [stdout] [INFO] [stderr] %"Gep char 11 of string Hello world!" = getelementptr inbounds [13 x i8], [13 x i8]* %"Cast pointer to ArrayType", i32 0, i32 11 [INFO] [stdout] test result: ok. 42 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stderr] store i8 33, i8* %"Gep char 11 of string Hello world!" [INFO] [stdout] [INFO] [stderr] %"Gep the last position for the terminating symbol of string Hello world!" = getelementptr inbounds [13 x i8], [13 x i8]* %"Cast pointer to ArrayType", i32 0, i32 12 [INFO] [stderr] store i8 0, i8* %"Gep the last position for the terminating symbol of string Hello world!" [INFO] [stderr] %"Cast to eliminate the size info" = bitcast [13 x i8]* %"Cast pointer to ArrayType" to i8* [INFO] [stderr] %malloc1 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc1, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast = bitcast i8* %malloc1 to %Native__String* [INFO] [stderr] %"Gep for the native value of the class Native__String" = getelementptr inbounds %Native__String, %Native__String* %cast, i32 0, i32 0 [INFO] [stderr] store i8* %"Cast to eliminate the size info", i8** %"Gep for the native value of the class Native__String" [INFO] [stderr] %malloc2 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc2, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast3 = bitcast i8* %malloc2 to %String* [INFO] [stderr] %"Gep for the field #0 of the class String" = getelementptr inbounds %String, %String* %cast3, i32 0, i32 0 [INFO] [stderr] store %Native__String* %cast, %Native__String** %"Gep for the field #0 of the class String" [INFO] [stderr] call void @lilit_user_space__println(%String* %cast3) [INFO] [stderr] %malloc4 = call i8* @GC_malloc(i64 ptrtoint (i64* getelementptr (i64, i64* null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc4, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast5 = bitcast i8* %malloc4 to %Native__Int* [INFO] [stderr] %"Gep for the native value of the class Native__Int" = getelementptr inbounds %Native__Int, %Native__Int* %cast5, i32 0, i32 0 [INFO] [stderr] store i64 123, i64* %"Gep for the native value of the class Native__Int" [INFO] [stderr] %malloc6 = call i8* @GC_malloc(i64 ptrtoint (i1** getelementptr (i1*, i1** null, i32 1) to i64)) [INFO] [stderr] call void @GC_register_finalizer(i8* %malloc6, void (i8*, i8*)* @GC_finalizer, i8* null, void (i8*, i8*)** null, i8** null) [INFO] [stderr] %cast7 = bitcast i8* %malloc6 to %Int* [INFO] [stderr] %"Gep for the field #0 of the class Int" = getelementptr inbounds %Int, %Int* %cast7, i32 0, i32 0 [INFO] [stderr] store %Native__Int* %cast5, %Native__Int** %"Gep for the field #0 of the class Int" [INFO] [stderr] ret %Int* %cast7 [INFO] [stderr] } [INFO] [stderr] [INFO] [stderr] declare noalias i8* @GC_malloc(i64 %0) [INFO] [stderr] [INFO] [stderr] declare void @GC_finalizer(i8* %0, i8* %1) [INFO] [stderr] [INFO] [stderr] declare void @GC_register_finalizer(i8* %0, void (i8*, i8*)* %1, i8* %2, void (i8*, i8*)** %3, i8** %4) [INFO] [stderr] [INFO] [stderr] define i32 @main(i32 %0, i8** %1) { [INFO] [stderr] first_block: [INFO] [stderr] %main = call %Int* @native__main() [INFO] [stderr] %"Gep for the first param of Int" = getelementptr inbounds %Int, %Int* %main, i32 0, i32 0 [INFO] [stderr] %"Load the first param of Int" = load %Native__Int*, %Native__Int** %"Gep for the first param of Int" [INFO] [stderr] %"Gep for the first param of Native__Int" = getelementptr inbounds %Native__Int, %Native__Int* %"Load the first param of Int", i32 0, i32 0 [INFO] [stderr] %"Load the first param of Native__Int" = load i64, i64* %"Gep for the first param of Native__Int" [INFO] [stderr] %"Cast return type" = trunc i64 %"Load the first param of Native__Int" to i32 [INFO] [stderr] ret i32 %"Cast return type" [INFO] [stderr] } [INFO] [stderr] Running /opt/rustwide/target/debug/deps/lilit-208c31531a29911d [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests lilit [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "17176f64e62f93af4f45581586785be5503fc59daa06fb6c57b3234cd1330025", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "17176f64e62f93af4f45581586785be5503fc59daa06fb6c57b3234cd1330025", kill_on_drop: false }` [INFO] [stdout] 17176f64e62f93af4f45581586785be5503fc59daa06fb6c57b3234cd1330025