diff options
| author | Dylan Baker <dylan@pnwbakers.com> | 2023-06-22 11:43:35 -0700 |
|---|---|---|
| committer | Dylan Baker <dylan@pnwbakers.com> | 2023-06-27 11:53:18 -0700 |
| commit | 772cb926243e6c3506c48d4e636359f8de397135 (patch) | |
| tree | a7463328b35010003de276b7ee0bbc3327522152 /test cases/rust/20 rust and cpp/main.rs | |
| parent | 5d16bd5308f0edd9d53b82ff6a961241c7188423 (diff) | |
| download | meson-772cb926243e6c3506c48d4e636359f8de397135.tar.gz | |
rust: get stdlib arguments for non-rust languages when linking
Otherwise we might not get things like libstdc++, which we need.
Diffstat (limited to 'test cases/rust/20 rust and cpp/main.rs')
| -rw-r--r-- | test cases/rust/20 rust and cpp/main.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test cases/rust/20 rust and cpp/main.rs b/test cases/rust/20 rust and cpp/main.rs new file mode 100644 index 000000000..b048cac2b --- /dev/null +++ b/test cases/rust/20 rust and cpp/main.rs @@ -0,0 +1,19 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright © 2023 Intel Corporation + +use std::ffi::CString; +use std::os::raw::c_char; + +extern "C" { + fn lib_length(s: *const c_char) -> u64; +} + +fn main() { + let len: u64; + unsafe { + let c_str = CString::new("Hello, world!").unwrap(); + len = lib_length(c_str.as_ptr()); + } + + std::process::exit(if len == 13 { 0 } else { 1 }) +} |
