gccrs: Add general TypeBounds checks
authorPhilip Herron <herron.philip@googlemail.com>
Sat, 4 Feb 2023 22:53:48 +0000 (22:53 +0000)
committerArthur Cohen <arthur.cohen@embecosm.com>
Thu, 6 Apr 2023 08:47:21 +0000 (10:47 +0200)
commiteb4a61ac1babffaa03d837d32a1107ea93e85e48
tree4bf814557c3220af75a6ec9869b490d55a02bf5f
parent11150b7c05c06b5885bfc95045699baf5e5d2a34
gccrs: Add general TypeBounds checks

Existing tests are updated to use libcore copy and clone implementation.

Addresses #1725

Signed-off-by: Philip Herron <herron.philip@googlemail.com>
gcc/rust/ChangeLog:

* typecheck/rust-unify.cc (UnifyRules::go): ensure the bounds are checked

gcc/testsuite/ChangeLog:

* rust/compile/torture/intrinsics-4.rs: implement Copy trait
* rust/compile/torture/intrinsics-5.rs: likewise
* rust/execute/torture/atomic_load.rs: likewise
* rust/execute/torture/atomic_store.rs: likewise
* rust/bounds1.rs: New test.
gcc/rust/typecheck/rust-unify.cc
gcc/testsuite/rust/bounds1.rs [new file with mode: 0644]
gcc/testsuite/rust/compile/torture/intrinsics-4.rs
gcc/testsuite/rust/compile/torture/intrinsics-5.rs
gcc/testsuite/rust/execute/torture/atomic_load.rs
gcc/testsuite/rust/execute/torture/atomic_store.rs