aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/parse/rust-parse.cc
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2022-03-17 10:23:04 +0000
committerGitHub <noreply@github.com>2022-03-17 10:23:04 +0000
commitfe13ad49b1da5285719b176bb5d00a94b9260ebf (patch)
tree7753f3b23d66655b6766159e0df3206ed594e164 /gcc/rust/parse/rust-parse.cc
parentbb234b080a5be332bbe67d9920a65959124088e7 (diff)
parent8086790254d0adaad48405ee838b8ca699e9d9a8 (diff)
downloadgcc-fe13ad49b1da5285719b176bb5d00a94b9260ebf.zip
gcc-fe13ad49b1da5285719b176bb5d00a94b9260ebf.tar.gz
gcc-fe13ad49b1da5285719b176bb5d00a94b9260ebf.tar.bz2
Merge #1030
1030: Rewrite our unconstrained type-param error checking r=philberty a=philberty This is a series of patches that were all required to fix this issue. We now take advantage of our substitutions abstractions and traits so that our TypeBoundPredicate's which form the basis of our HRTB code I think this class is almost akin to rustc existential-trait-references. This now reuses the same code path to give us the same error checking for generics as we get with ADT's, functions etc. With this refactoring in place we can then reuse the abstractions to map the ID's from the used arguments in the type-bound-predicate, the impl block type substation mappings and the self type itself. There are quite a few cases to handle and our testsuite picked up all the regressions so no behaviour of our existing test-cases have changed now. See each commit for more detailed information. Fixes #1019 Addresses #849 Co-authored-by: Philip Herron <philip.herron@embecosm.com>
Diffstat (limited to 'gcc/rust/parse/rust-parse.cc')
0 files changed, 0 insertions, 0 deletions