aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/backend/rust-compile-base.h
diff options
context:
space:
mode:
authorPhilip Herron <herron.philip@googlemail.com>2025-03-26 19:00:41 +0000
committerPhilip Herron <philip.herron@embecosm.com>2025-03-27 13:22:19 +0000
commit31ee9259a71742a455ead61c8b6142dcfab28b0f (patch)
tree84f713ba8d0b0b944ce0c7b373b8058910fa432a /gcc/rust/backend/rust-compile-base.h
parent23097f8132bcaf252020ed04758af71365758a8f (diff)
downloadgcc-31ee9259a71742a455ead61c8b6142dcfab28b0f.zip
gcc-31ee9259a71742a455ead61c8b6142dcfab28b0f.tar.gz
gcc-31ee9259a71742a455ead61c8b6142dcfab28b0f.tar.bz2
gccrs: Add check for super traits being implemented by Self
We need to recursively check the super traits of the predicate the Self type is trying to implement. Otherwise its cannot implement it. Fixes Rust-GCC#3553 gcc/rust/ChangeLog: * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::resolve_impl_block_substitutions): Track the polarity * typecheck/rust-tyty-bounds.cc (TypeBoundPredicate::validate_type_implements_this): new validator * typecheck/rust-tyty.h: new prototypes gcc/testsuite/ChangeLog: * rust/compile/issue-3553.rs: New test. Signed-off-by: Philip Herron <herron.philip@googlemail.com>
Diffstat (limited to 'gcc/rust/backend/rust-compile-base.h')
0 files changed, 0 insertions, 0 deletions