about summary refs log tree commit diff
diff options
context:
space:
mode:
authorunknown <abramlujan@gmail.com>2022-01-03 01:39:43 -0300
committerMark Rousskov <mark.simulacrum@gmail.com>2022-01-10 17:21:16 -0500
commitfc8af986fd9a102cb14b15ce22f8e58b52aaef52 (patch)
treeda645cad507db3211dc9c73d4fc91df023d1cbc2
parent89b9f7b284aacc5f8613438b80e4dd7bdd10549e (diff)
downloadrust-fc8af986fd9a102cb14b15ce22f8e58b52aaef52.tar.gz
rust-fc8af986fd9a102cb14b15ce22f8e58b52aaef52.zip
Document Box<T> FFI guarantee in 1.41.0 release notes
Fixes #68676
-rw-r--r--RELEASES.md6
1 files changed, 6 insertions, 0 deletions
diff --git a/RELEASES.md b/RELEASES.md
index 59d04d4ba76..c19b8c01ce9 100644
--- a/RELEASES.md
+++ b/RELEASES.md
@@ -2588,6 +2588,11 @@ Language
 - [Visibility modifiers (e.g. `pub`) are now syntactically allowed on trait items and
   enum variants.][66183] These are still rejected semantically, but
   can be seen and parsed by procedural macros and conditional compilation.
+- [You can now define a Rust `extern "C"` function with `Box<T>` and use `T*` as the corresponding
+  type on the C side.][62514] Please see [the documentation][box-memory-layout] for more information,
+  including the important caveat about preferring to avoid `Box<T>` in Rust signatures for functions defined in C.
+
+[box-memory-layout]: https://doc.rust-lang.org/std/boxed/index.html#memory-layout
 
 Compiler
 --------
@@ -2662,6 +2667,7 @@ Compatibility Notes
 
 [54733]: https://github.com/rust-lang/rust/pull/54733/
 [61351]: https://github.com/rust-lang/rust/pull/61351/
+[62514]: https://github.com/rust-lang/rust/pull/62514/
 [67255]: https://github.com/rust-lang/rust/pull/67255/
 [66661]: https://github.com/rust-lang/rust/pull/66661/
 [66771]: https://github.com/rust-lang/rust/pull/66771/