about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRalf Jung <post@ralfj.de>2025-09-05 12:03:53 +0000
committerGitHub <noreply@github.com>2025-09-05 12:03:53 +0000
commitd5b4324059a6c9395b3f1738e2c2de68ac5d7341 (patch)
tree16a41ced16f66d3402a7cc91896ef8f310a9cb96
parent0dcc21b1249dc6ada6ec69e38074123eeaca72d8 (diff)
parent69c7652a01a721be007cb9f7ef56f1e483f39fc8 (diff)
downloadrust-d5b4324059a6c9395b3f1738e2c2de68ac5d7341.tar.gz
rust-d5b4324059a6c9395b3f1738e2c2de68ac5d7341.zip
Merge pull request #4570 from RalfJung/atomic-rmw-int
atomic rmw intrinsics: RHS must be an integer
-rw-r--r--src/tools/miri/src/intrinsics/atomic.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/tools/miri/src/intrinsics/atomic.rs b/src/tools/miri/src/intrinsics/atomic.rs
index c9f63640b85..9bb0ab70de2 100644
--- a/src/tools/miri/src/intrinsics/atomic.rs
+++ b/src/tools/miri/src/intrinsics/atomic.rs
@@ -264,8 +264,9 @@ trait EvalContextPrivExt<'tcx>: MiriInterpCxExt<'tcx> {
         let place = this.deref_pointer(place)?;
         let rhs = this.read_immediate(rhs)?;
 
+        // The LHS can be a pointer, the RHS must be an integer.
         if !(place.layout.ty.is_integral() || place.layout.ty.is_raw_ptr())
-            || !(rhs.layout.ty.is_integral() || rhs.layout.ty.is_raw_ptr())
+            || !rhs.layout.ty.is_integral()
         {
             span_bug!(
                 this.cur_span(),