[INFO] fetching crate emacs_module_bindings 0.7.0... [INFO] testing emacs_module_bindings-0.7.0 against 1.49.0 for beta-1.50-1 [INFO] extracting crate emacs_module_bindings 0.7.0 into /workspace/builds/worker-7/source [INFO] validating manifest of crates.io crate emacs_module_bindings 0.7.0 on toolchain 1.49.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.49.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking crates.io crate emacs_module_bindings 0.7.0 [INFO] finished tweaking crates.io crate emacs_module_bindings 0.7.0 [INFO] tweaked toml for crates.io crate emacs_module_bindings 0.7.0 written to /workspace/builds/worker-7/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.49.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.49.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "rustops/crates-build-env@sha256:c8ac004eab7d63a0ad09a2dde3d3353ba464f767bee4de425dc8f74c46a1905e" "/opt/rustwide/cargo-home/bin/cargo" "+1.49.0" "metadata" "--no-deps" "--format-version=1", 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] ab5a148fe4e709b98a9cd41676b13a3e9101f782c8478a44ccc7d0cefd3fafe7 [INFO] running `Command { std: "docker" "start" "-a" "ab5a148fe4e709b98a9cd41676b13a3e9101f782c8478a44ccc7d0cefd3fafe7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ab5a148fe4e709b98a9cd41676b13a3e9101f782c8478a44ccc7d0cefd3fafe7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ab5a148fe4e709b98a9cd41676b13a3e9101f782c8478a44ccc7d0cefd3fafe7", kill_on_drop: false }` [INFO] [stdout] ab5a148fe4e709b98a9cd41676b13a3e9101f782c8478a44ccc7d0cefd3fafe7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:c8ac004eab7d63a0ad09a2dde3d3353ba464f767bee4de425dc8f74c46a1905e" "/opt/rustwide/cargo-home/bin/cargo" "+1.49.0" "build" "--frozen" "--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] 0cf7b40dfb7ec3086cc3f5bf98ab07c46d570f914bbf21df827c0c9cc2e5e817 [INFO] running `Command { std: "docker" "start" "-a" "0cf7b40dfb7ec3086cc3f5bf98ab07c46d570f914bbf21df827c0c9cc2e5e817", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.81 [INFO] [stderr] Compiling glob v0.2.11 [INFO] [stderr] Compiling libloading v0.4.3 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling ucd-util v0.1.8 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling utf8-ranges v1.0.4 [INFO] [stderr] Compiling bindgen v0.32.3 [INFO] [stderr] Compiling peeking_take_while v0.1.2 [INFO] [stderr] Compiling aho-corasick v0.6.10 [INFO] [stderr] Compiling proc-macro2 v0.2.3 [INFO] [stderr] Compiling regex-syntax v0.5.6 [INFO] [stderr] Compiling clang-sys v0.21.2 [INFO] [stderr] Compiling quote v0.4.2 [INFO] [stderr] Compiling memchr v1.0.2 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling which v1.0.5 [INFO] [stderr] Compiling nom v3.2.1 [INFO] [stderr] Compiling clap v2.33.3 [INFO] [stderr] Compiling cexpr v0.2.3 [INFO] [stderr] Compiling env_logger v0.4.3 [INFO] [stderr] Compiling emacs_module_bindings v0.7.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:18:49 [INFO] [stdout] | [INFO] [stdout] 18 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stdout] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:29:42 [INFO] [stdout] | [INFO] [stdout] 29 | let doc = CString::new(doc).unwrap().as_ptr(); [INFO] [stdout] | -------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:39:50 [INFO] [stdout] | [INFO] [stdout] 39 | let c_string = CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ----------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:59:49 [INFO] [stdout] | [INFO] [stdout] 59 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stdout] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:80:53 [INFO] [stdout] | [INFO] [stdout] 80 | intern (env, CString::new(feature).unwrap().as_ptr()) [INFO] [stdout] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:15:59 [INFO] [stdout] | [INFO] [stdout] 15 | pub extern "C" fn find_function(env: *mut EmacsEnv, name: &str) -> EmacsVal { [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:27:38 [INFO] [stdout] | [INFO] [stdout] 27 | ... doc: &str, [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:56:59 [INFO] [stdout] | [INFO] [stdout] 56 | pub extern "C" fn intern_symbol(env: *mut EmacsEnv, name: String) -> EmacsVal { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:65:39 [INFO] [stdout] | [INFO] [stdout] 65 | ... name: String, [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:77:56 [INFO] [stdout] | [INFO] [stdout] 77 | pub extern "C" fn provide(env: *mut EmacsEnv, feature: String) { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:92:58 [INFO] [stdout] | [INFO] [stdout] 92 | pub extern "C" fn get_buffer(env: *mut EmacsEnv, buffer: String) -> EmacsVal { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:102:53 [INFO] [stdout] | [INFO] [stdout] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `[*mut emacs_value_tag]`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:102:65 [INFO] [stdout] | [INFO] [stdout] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stdout] | ^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using a raw pointer instead [INFO] [stdout] = note: slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 08s [INFO] running `Command { std: "docker" "inspect" "0cf7b40dfb7ec3086cc3f5bf98ab07c46d570f914bbf21df827c0c9cc2e5e817", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0cf7b40dfb7ec3086cc3f5bf98ab07c46d570f914bbf21df827c0c9cc2e5e817", kill_on_drop: false }` [INFO] [stdout] 0cf7b40dfb7ec3086cc3f5bf98ab07c46d570f914bbf21df827c0c9cc2e5e817 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:c8ac004eab7d63a0ad09a2dde3d3353ba464f767bee4de425dc8f74c46a1905e" "/opt/rustwide/cargo-home/bin/cargo" "+1.49.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f611b90a3cce58f1166389641ad98b3c4dd498e0745591cf7e46872b9e42a6e9 [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" "f611b90a3cce58f1166389641ad98b3c4dd498e0745591cf7e46872b9e42a6e9", kill_on_drop: false }` [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:18:49 [INFO] [stdout] | [INFO] [stdout] 18 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stdout] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:29:42 [INFO] [stdout] | [INFO] [stdout] 29 | let doc = CString::new(doc).unwrap().as_ptr(); [INFO] [stdout] | -------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:39:50 [INFO] [stdout] | [INFO] [stdout] 39 | let c_string = CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ----------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:59:49 [INFO] [stdout] | [INFO] [stdout] 59 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stdout] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:80:53 [INFO] [stdout] | [INFO] [stdout] 80 | intern (env, CString::new(feature).unwrap().as_ptr()) [INFO] [stdout] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:15:59 [INFO] [stdout] | [INFO] [stdout] 15 | pub extern "C" fn find_function(env: *mut EmacsEnv, name: &str) -> EmacsVal { [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:27:38 [INFO] [stdout] | [INFO] [stdout] 27 | ... doc: &str, [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:56:59 [INFO] [stdout] | [INFO] [stdout] 56 | pub extern "C" fn intern_symbol(env: *mut EmacsEnv, name: String) -> EmacsVal { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:65:39 [INFO] [stdout] | [INFO] [stdout] 65 | ... name: String, [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:77:56 [INFO] [stdout] | [INFO] [stdout] 77 | pub extern "C" fn provide(env: *mut EmacsEnv, feature: String) { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:92:58 [INFO] [stdout] | [INFO] [stdout] 92 | pub extern "C" fn get_buffer(env: *mut EmacsEnv, buffer: String) -> EmacsVal { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:102:53 [INFO] [stdout] | [INFO] [stdout] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `[*mut emacs_value_tag]`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:102:65 [INFO] [stdout] | [INFO] [stdout] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stdout] | ^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using a raw pointer instead [INFO] [stdout] = note: slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling emacs_module_bindings v0.7.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:18:49 [INFO] [stdout] | [INFO] [stdout] 18 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stdout] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:29:42 [INFO] [stdout] | [INFO] [stdout] 29 | let doc = CString::new(doc).unwrap().as_ptr(); [INFO] [stdout] | -------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:39:50 [INFO] [stdout] | [INFO] [stdout] 39 | let c_string = CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ----------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:59:49 [INFO] [stdout] | [INFO] [stdout] 59 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stdout] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/lib.rs:80:53 [INFO] [stdout] | [INFO] [stdout] 80 | intern (env, CString::new(feature).unwrap().as_ptr()) [INFO] [stdout] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:15:59 [INFO] [stdout] | [INFO] [stdout] 15 | pub extern "C" fn find_function(env: *mut EmacsEnv, name: &str) -> EmacsVal { [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:27:38 [INFO] [stdout] | [INFO] [stdout] 27 | ... doc: &str, [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:56:59 [INFO] [stdout] | [INFO] [stdout] 56 | pub extern "C" fn intern_symbol(env: *mut EmacsEnv, name: String) -> EmacsVal { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:65:39 [INFO] [stdout] | [INFO] [stdout] 65 | ... name: String, [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:77:56 [INFO] [stdout] | [INFO] [stdout] 77 | pub extern "C" fn provide(env: *mut EmacsEnv, feature: String) { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:92:58 [INFO] [stdout] | [INFO] [stdout] 92 | pub extern "C" fn get_buffer(env: *mut EmacsEnv, buffer: String) -> EmacsVal { [INFO] [stdout] | ^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stdout] = note: this struct has unspecified layout [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:102:53 [INFO] [stdout] | [INFO] [stdout] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stdout] | ^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using `*const u8` and a length instead [INFO] [stdout] = note: string slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `[*mut emacs_value_tag]`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:102:65 [INFO] [stdout] | [INFO] [stdout] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stdout] | ^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider using a raw pointer instead [INFO] [stdout] = note: slices have no C equivalent [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.94s [INFO] running `Command { std: "docker" "inspect" "f611b90a3cce58f1166389641ad98b3c4dd498e0745591cf7e46872b9e42a6e9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f611b90a3cce58f1166389641ad98b3c4dd498e0745591cf7e46872b9e42a6e9", kill_on_drop: false }` [INFO] [stdout] f611b90a3cce58f1166389641ad98b3c4dd498e0745591cf7e46872b9e42a6e9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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=warn" "-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" "rustops/crates-build-env@sha256:c8ac004eab7d63a0ad09a2dde3d3353ba464f767bee4de425dc8f74c46a1905e" "/opt/rustwide/cargo-home/bin/cargo" "+1.49.0" "test" "--frozen", 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] c2584d847ace87adffa091a8b6b92b2c29049b906320a326607cb62d95e85a29 [INFO] running `Command { std: "docker" "start" "-a" "c2584d847ace87adffa091a8b6b92b2c29049b906320a326607cb62d95e85a29", kill_on_drop: false }` [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:18:49 [INFO] [stderr] | [INFO] [stderr] 18 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stderr] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:29:42 [INFO] [stderr] | [INFO] [stderr] 29 | let doc = CString::new(doc).unwrap().as_ptr(); [INFO] [stderr] | -------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:39:50 [INFO] [stderr] | [INFO] [stderr] 39 | let c_string = CString::new(string).unwrap().as_ptr(); [INFO] [stderr] | ----------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:59:49 [INFO] [stderr] | [INFO] [stderr] 59 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stderr] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:80:53 [INFO] [stderr] | [INFO] [stderr] 80 | intern (env, CString::new(feature).unwrap().as_ptr()) [INFO] [stderr] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:15:59 [INFO] [stderr] | [INFO] [stderr] 15 | pub extern "C" fn find_function(env: *mut EmacsEnv, name: &str) -> EmacsVal { [INFO] [stderr] | ^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stderr] = help: consider using `*const u8` and a length instead [INFO] [stderr] = note: string slices have no C equivalent [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:27:38 [INFO] [stderr] | [INFO] [stderr] 27 | ... doc: &str, [INFO] [stderr] | ^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider using `*const u8` and a length instead [INFO] [stderr] = note: string slices have no C equivalent [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:56:59 [INFO] [stderr] | [INFO] [stderr] 56 | pub extern "C" fn intern_symbol(env: *mut EmacsEnv, name: String) -> EmacsVal { [INFO] [stderr] | ^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stderr] = note: this struct has unspecified layout [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:65:39 [INFO] [stderr] | [INFO] [stderr] 65 | ... name: String, [INFO] [stderr] | ^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stderr] = note: this struct has unspecified layout [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:77:56 [INFO] [stderr] | [INFO] [stderr] 77 | pub extern "C" fn provide(env: *mut EmacsEnv, feature: String) { [INFO] [stderr] | ^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stderr] = note: this struct has unspecified layout [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:92:58 [INFO] [stderr] | [INFO] [stderr] 92 | pub extern "C" fn get_buffer(env: *mut EmacsEnv, buffer: String) -> EmacsVal { [INFO] [stderr] | ^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stderr] = note: this struct has unspecified layout [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:102:53 [INFO] [stderr] | [INFO] [stderr] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stderr] | ^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider using `*const u8` and a length instead [INFO] [stderr] = note: string slices have no C equivalent [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `[*mut emacs_value_tag]`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:102:65 [INFO] [stderr] | [INFO] [stderr] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stderr] | ^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider using a raw pointer instead [INFO] [stderr] = note: slices have no C equivalent [INFO] [stderr] [INFO] [stderr] warning: 13 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:18:49 [INFO] [stderr] | [INFO] [stderr] 18 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stderr] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:29:42 [INFO] [stderr] | [INFO] [stderr] 29 | let doc = CString::new(doc).unwrap().as_ptr(); [INFO] [stderr] | -------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:39:50 [INFO] [stderr] | [INFO] [stderr] 39 | let c_string = CString::new(string).unwrap().as_ptr(); [INFO] [stderr] | ----------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:59:49 [INFO] [stderr] | [INFO] [stderr] 59 | intern(env, CString::new(name).unwrap().as_ptr()) [INFO] [stderr] | --------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/lib.rs:80:53 [INFO] [stderr] | [INFO] [stderr] 80 | intern (env, CString::new(feature).unwrap().as_ptr()) [INFO] [stderr] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:15:59 [INFO] [stderr] | [INFO] [stderr] 15 | pub extern "C" fn find_function(env: *mut EmacsEnv, name: &str) -> EmacsVal { [INFO] [stderr] | ^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stderr] = help: consider using `*const u8` and a length instead [INFO] [stderr] = note: string slices have no C equivalent [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:27:38 [INFO] [stderr] | [INFO] [stderr] 27 | ... doc: &str, [INFO] [stderr] | ^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider using `*const u8` and a length instead [INFO] [stderr] = note: string slices have no C equivalent [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:56:59 [INFO] [stderr] | [INFO] [stderr] 56 | pub extern "C" fn intern_symbol(env: *mut EmacsEnv, name: String) -> EmacsVal { [INFO] [stderr] | ^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stderr] = note: this struct has unspecified layout [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:65:39 [INFO] [stderr] | [INFO] [stderr] 65 | ... name: String, [INFO] [stderr] | ^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stderr] = note: this struct has unspecified layout [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:77:56 [INFO] [stderr] | [INFO] [stderr] 77 | pub extern "C" fn provide(env: *mut EmacsEnv, feature: String) { [INFO] [stderr] | ^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stderr] = note: this struct has unspecified layout [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `String`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:92:58 [INFO] [stderr] | [INFO] [stderr] 92 | pub extern "C" fn get_buffer(env: *mut EmacsEnv, buffer: String) -> EmacsVal { [INFO] [stderr] | ^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct [INFO] [stderr] = note: this struct has unspecified layout [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `str`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:102:53 [INFO] [stderr] | [INFO] [stderr] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stderr] | ^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider using `*const u8` and a length instead [INFO] [stderr] = note: string slices have no C equivalent [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `[*mut emacs_value_tag]`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:102:65 [INFO] [stderr] | [INFO] [stderr] 102 | pub extern "C" fn call(env: *mut EmacsEnv, fn_name: &str, args: &mut [EmacsVal]) [INFO] [stderr] | ^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider using a raw pointer instead [INFO] [stderr] = note: slices have no C equivalent [INFO] [stderr] [INFO] [stderr] warning: 13 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/emacs_module_bindings-3b0f2990ece3be07 [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test emacs_gen::bindgen_test_layout___fsid_t ... ok [INFO] [stdout] test emacs_gen::bindgen_test_layout_emacs_env_25 ... ok [INFO] [stdout] test emacs_gen::bindgen_test_layout_emacs_runtime ... ok [INFO] [stdout] test emacs_gen::bindgen_test_layout_max_align_t ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- emacs_gen::bindgen_test_layout_max_align_t stdout ---- [INFO] [stdout] thread 'emacs_gen::bindgen_test_layout_max_align_t' panicked at 'assertion failed: `(left == right)` [INFO] [stdout] left: `24`, [INFO] [stdout] right: `32`: Size of: max_align_t', /opt/rustwide/target/debug/build/emacs_module_bindings-8a09c2235a6c70f7/out/emacs_module.rs:3:11421 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561b31c59c00 - std::backtrace_rs::backtrace::libunwind::trace::h04d12fdcddff82aa [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/../../backtrace/src/backtrace/libunwind.rs:100:5 [INFO] [stdout] 1: 0x561b31c59c00 - std::backtrace_rs::backtrace::trace_unsynchronized::h1459b974b6fbe5e1 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x561b31c59c00 - std::sys_common::backtrace::_print_fmt::h9b8396a669123d95 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x561b31c59c00 - ::fmt::he009dcaaa75eed60 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x561b31c7ccec - core::fmt::write::h77b4746b0dea1dd3 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/core/src/fmt/mod.rs:1078:17 [INFO] [stdout] 5: 0x561b31c03816 - std::io::Write::write_fmt::h3a40d9c04f88bb58 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/io/mod.rs:1518:15 [INFO] [stdout] 6: 0x561b31c53efd - std::io::impls::>::write_fmt::h1b3d263673641f53 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/io/impls.rs:179:9 [INFO] [stdout] 7: 0x561b31c5c2d5 - std::sys_common::backtrace::_print::h2d880c9e69a21be9 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 8: 0x561b31c5c2d5 - std::sys_common::backtrace::print::h5f02b1bb49f36879 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 9: 0x561b31c5c2d5 - std::panicking::default_hook::{{closure}}::h658e288a7a809b29 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:208:50 [INFO] [stdout] 10: 0x561b31c5bf22 - std::panicking::default_hook::hb52d73f0da9a4bb8 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:224:9 [INFO] [stdout] 11: 0x561b31c5ca71 - std::panicking::rust_panic_with_hook::hfe7e1c684e3e6462 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:593:17 [INFO] [stdout] 12: 0x561b31c5c5b7 - std::panicking::begin_panic_handler::{{closure}}::h42939e004b32765c [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:499:13 [INFO] [stdout] 13: 0x561b31c5a0bc - std::sys_common::backtrace::__rust_end_short_backtrace::h9d2070f7bf9fd56c [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/sys_common/backtrace.rs:141:18 [INFO] [stdout] 14: 0x561b31c5c519 - rust_begin_unwind [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:495:5 [INFO] [stdout] 15: 0x561b31c5c4cb - std::panicking::begin_panic_fmt::h4a7e15187eac098d [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:437:5 [INFO] [stdout] 16: 0x561b31bfd5ca - emacs_module_bindings::emacs_gen::bindgen_test_layout_max_align_t::h396b4c95166d5b0a [INFO] [stdout] at /opt/rustwide/target/debug/build/emacs_module_bindings-8a09c2235a6c70f7/out/emacs_module.rs:3:11421 [INFO] [stdout] 17: 0x561b31bfd3fa - emacs_module_bindings::emacs_gen::bindgen_test_layout_max_align_t::{{closure}}::hbbd811a490031054 [INFO] [stdout] at /opt/rustwide/target/debug/build/emacs_module_bindings-8a09c2235a6c70f7/out/emacs_module.rs:3:11380 [INFO] [stdout] 18: 0x561b31c0250e - core::ops::function::FnOnce::call_once::hc877a616e4447b42 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 19: 0x561b31c2b363 - core::ops::function::FnOnce::call_once::hdbd2235b6243db3d [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x561b31c2b363 - test::__rust_begin_short_backtrace::hb1dea1c208110812 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/test/src/lib.rs:517:5 [INFO] [stdout] 21: 0x561b31c2980a - as core::ops::function::FnOnce>::call_once::h5d11a40efef721f2 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/alloc/src/boxed.rs:1307:9 [INFO] [stdout] 22: 0x561b31c2980a - as core::ops::function::FnOnce<()>>::call_once::h23961df98af0bc5a [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panic.rs:322:9 [INFO] [stdout] 23: 0x561b31c2980a - std::panicking::try::do_call::h6390646e3de3fb9e [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:381:40 [INFO] [stdout] 24: 0x561b31c2980a - std::panicking::try::hc531439ab6159192 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:345:19 [INFO] [stdout] 25: 0x561b31c2980a - std::panic::catch_unwind::h859d8bdaf9b4855c [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panic.rs:396:14 [INFO] [stdout] 26: 0x561b31c2980a - test::run_test_in_process::hae60aa74417e3abc [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/test/src/lib.rs:544:18 [INFO] [stdout] 27: 0x561b31c2980a - test::run_test::run_test_inner::{{closure}}::hf48c86652c4a151d [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/test/src/lib.rs:450:39 [INFO] [stdout] 28: 0x561b31c02b96 - std::sys_common::backtrace::__rust_begin_short_backtrace::hb82b392232b8bd1f [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/sys_common/backtrace.rs:125:18 [INFO] [stdout] 29: 0x561b31c07b93 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h79ca9e9abe157956 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/thread/mod.rs:474:17 [INFO] [stdout] 30: 0x561b31c07b93 - as core::ops::function::FnOnce<()>>::call_once::ha12f1f228780a4f7 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panic.rs:322:9 [INFO] [stdout] 31: 0x561b31c07b93 - std::panicking::try::do_call::h722bb7416d021cdc [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:381:40 [INFO] [stdout] 32: 0x561b31c07b93 - std::panicking::try::h78e5abca71ac7cac [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:345:19 [INFO] [stdout] 33: 0x561b31c07b93 - std::panic::catch_unwind::h95162588bd0fa090 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panic.rs:396:14 [INFO] [stdout] 34: 0x561b31c07b93 - std::thread::Builder::spawn_unchecked::{{closure}}::h64da5c4b9acc58dc [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/thread/mod.rs:473:30 [INFO] [stdout] 35: 0x561b31c07b93 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7a8c588ad0b69edb [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 36: 0x561b31c62e9a - as core::ops::function::FnOnce>::call_once::h09ff301006f1aeca [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/alloc/src/boxed.rs:1307:9 [INFO] [stdout] 37: 0x561b31c62e9a - as core::ops::function::FnOnce>::call_once::he79488c8f00b5f31 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/alloc/src/boxed.rs:1307:9 [INFO] [stdout] 38: 0x561b31c62e9a - std::sys::unix::thread::Thread::new::thread_start::h587efff279c68ba7 [INFO] [stdout] at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/sys/unix/thread.rs:71:17 [INFO] [stdout] 39: 0x7f2f160e5609 - start_thread [INFO] [stdout] 40: 0x7f2f15eb7293 - clone [INFO] [stdout] 41: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] emacs_gen::bindgen_test_layout_max_align_t [INFO] [stdout] [INFO] [stdout] test result: FAILED. 3 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] running `Command { std: "docker" "inspect" "c2584d847ace87adffa091a8b6b92b2c29049b906320a326607cb62d95e85a29", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c2584d847ace87adffa091a8b6b92b2c29049b906320a326607cb62d95e85a29", kill_on_drop: false }` [INFO] [stdout] c2584d847ace87adffa091a8b6b92b2c29049b906320a326607cb62d95e85a29