Skip to content

Commit c727d3c

Browse files
committed
Update tests
1 parent 20681da commit c727d3c

2 files changed

Lines changed: 26 additions & 0 deletions

File tree

‎tests/unit/out/refcount/unconst.rs‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,12 @@ use std::io::prelude::*;
66
use std::io::{Read, Seek, Write};
77
use std::os::fd::AsFd;
88
use std::rc::{Rc, Weak};
9+
pub fn set_0(r: Ptr<i32>) {
10+
r.write(7);
11+
}
12+
pub fn set_through_1(v: Ptr<i32>) {
13+
({ set_0((v).clone()) });
14+
}
915
pub fn main() {
1016
__cpp2rust_init_globals();
1117
std::process::exit(main_0());
@@ -15,6 +21,13 @@ fn main_0() -> i32 {
1521
let mut p: Ptr<i32> = (a.as_pointer());
1622
let mut q: Ptr<i32> = (<AnyPtr>::from_int((p).to_any().to_int())).reinterpret_cast::<i32>();
1723
assert!(({ (p).clone() } == { (q).clone() }));
24+
let v: Value<i32> = Rc::new(RefCell::new(1));
25+
let cr: Ptr<i32> = v.as_pointer();
26+
({ set_0((cr).clone()) });
27+
assert!(((*v.borrow()) == 7));
28+
(*v.borrow_mut()) = 0;
29+
({ set_through_1(v.as_pointer()) });
30+
assert!(((*v.borrow()) == 7));
1831
return 0;
1932
}
2033
pub fn __cpp2rust_init_globals() {}

‎tests/unit/out/unsafe/unconst.rs‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,12 @@ use std::collections::BTreeMap;
66
use std::io::{Read, Seek, Write};
77
use std::os::fd::{AsFd, FromRawFd, IntoRawFd};
88
use std::rc::Rc;
9+
pub unsafe fn set_0(r: *mut i32) {
10+
(*r) = 7;
11+
}
12+
pub unsafe fn set_through_1(v: *const i32) {
13+
(unsafe { set_0((v).cast_mut()) });
14+
}
915
pub fn main() {
1016
unsafe {
1117
__cpp2rust_init_globals();
@@ -18,6 +24,13 @@ unsafe fn main_0() -> i32 {
1824
let mut q: *mut i32 =
1925
(((((p) as *const ::libc::c_void) as u64) as *mut ::libc::c_void) as *mut i32);
2026
assert!(((p) == ((q).cast_const())));
27+
let mut v: i32 = 1;
28+
let cr: *const i32 = &v;
29+
(unsafe { set_0((cr).cast_mut()) });
30+
assert!(((v) == (7)));
31+
v = 0;
32+
(unsafe { set_through_1(&v) });
33+
assert!(((v) == (7)));
2134
return 0;
2235
}
2336
pub unsafe fn __cpp2rust_init_globals() {}

0 commit comments

Comments
 (0)