Fix warning on unused unsafe_bitcopy variable
diff --git a/gen/src/builtin.rs b/gen/src/builtin.rs
index adcd048..36e51d5 100644
--- a/gen/src/builtin.rs
+++ b/gen/src/builtin.rs
@@ -15,6 +15,7 @@
pub opaque: bool,
pub layout: bool,
pub unsafe_bitcopy: bool,
+ pub unsafe_bitcopy_t: bool,
pub rust_error: bool,
pub manually_drop: bool,
pub maybe_uninit: bool,
@@ -74,7 +75,7 @@
include.utility = true;
builtin.panic = true;
builtin.rust_slice = true;
- builtin.unsafe_bitcopy = true;
+ builtin.unsafe_bitcopy_t = true;
}
if builtin.rust_slice {
@@ -124,6 +125,10 @@
include.type_traits = true;
}
+ if builtin.unsafe_bitcopy {
+ builtin.unsafe_bitcopy_t = true;
+ }
+
out.begin_block(Block::Namespace("rust"));
out.begin_block(Block::InlineNamespace("cxxbridge1"));
@@ -165,6 +170,7 @@
ifndef::write(out, builtin.rust_str, "CXXBRIDGE1_RUST_STR");
ifndef::write(out, builtin.rust_slice, "CXXBRIDGE1_RUST_SLICE");
ifndef::write(out, builtin.rust_box, "CXXBRIDGE1_RUST_BOX");
+ ifndef::write(out, builtin.unsafe_bitcopy_t, "CXXBRIDGE1_RUST_BITCOPY_T");
ifndef::write(out, builtin.unsafe_bitcopy, "CXXBRIDGE1_RUST_BITCOPY");
ifndef::write(out, builtin.rust_vec, "CXXBRIDGE1_RUST_VEC");
ifndef::write(out, builtin.rust_fn, "CXXBRIDGE1_RUST_FN");
diff --git a/include/cxx.h b/include/cxx.h
index 7ee7db7..45ec64b 100644
--- a/include/cxx.h
+++ b/include/cxx.h
@@ -484,12 +484,15 @@
}
#endif // CXXBRIDGE1_RUST_FN
-#ifndef CXXBRIDGE1_RUST_BITCOPY
-#define CXXBRIDGE1_RUST_BITCOPY
+#ifndef CXXBRIDGE1_RUST_BITCOPY_T
+#define CXXBRIDGE1_RUST_BITCOPY_T
struct unsafe_bitcopy_t final {
explicit unsafe_bitcopy_t() = default;
};
+#endif // CXXBRIDGE1_RUST_BITCOPY_T
+#ifndef CXXBRIDGE1_RUST_BITCOPY
+#define CXXBRIDGE1_RUST_BITCOPY
constexpr unsafe_bitcopy_t unsafe_bitcopy{};
#endif // CXXBRIDGE1_RUST_BITCOPY