gccrs: Support Closure calls as generic trait bounds
authorPhilip Herron <philip.herron@embecosm.com>
Thu, 20 Oct 2022 17:31:02 +0000 (18:31 +0100)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 21 Feb 2023 11:36:41 +0000 (12:36 +0100)
commit21d19d2cf606bc8133574b49013d9bac47bdce20
tree06d8487b47862cce2b7f3832379c7a4ef36fff71
parent51d180fcd7e6bce5093978e1a8ff64ac6e7624c7
gccrs: Support Closure calls as generic trait bounds

gcc/rust/ChangeLog:

* backend/rust-compile-expr.cc (CompileExpr::visit): Refactor checking of closures.
(CompileExpr::generate_possible_fn_trait_call): New function.
* backend/rust-compile-expr.h: Declare `generate_possible_fn_trait_call`.

gcc/testsuite/ChangeLog:

* rust/execute/torture/closure2.rs: New test.
gcc/rust/backend/rust-compile-expr.cc
gcc/rust/backend/rust-compile-expr.h
gcc/testsuite/rust/execute/torture/closure2.rs [new file with mode: 0644]