aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/rust-session-manager.cc
diff options
context:
space:
mode:
authorPhilip Herron <philip.herron@embecosm.com>2022-04-25 17:48:09 +0100
committerPhilip Herron <philip.herron@embecosm.com>2022-04-25 17:51:26 +0100
commite69e162462c6fb3d886460d96ce649207b7c9e3f (patch)
tree026bc2cd43e47457e87e03849a5148177e7d739a /gcc/rust/rust-session-manager.cc
parent2b1cb4ba8693e2c148e7aa406b4f03d34ffc0439 (diff)
downloadgcc-e69e162462c6fb3d886460d96ce649207b7c9e3f.zip
gcc-e69e162462c6fb3d886460d96ce649207b7c9e3f.tar.gz
gcc-e69e162462c6fb3d886460d96ce649207b7c9e3f.tar.bz2
Support inference of generic parameters on paths behind reference's
We used a hack in the parser to turn simple cases such as &Foo(..) into: BorrowExpr CallExpr( IdentifierExpr + <Argument-expressions>)) The IdentifierExpr here is parsed as a PathExpression but to simplify things at the time it seemed logic to see these as identifier expressions but this is actually a Path and we need to be careful about generic arguments here. Identifiers are simply identifiers and must not be changed or coherence of inference variables will become a jumble of inference variables trying to infer one another inside purely generic code. This patch leaves the PathInExpressions as Path's instead of trying to be clever and turn them into identifiers. Fixes #1165
Diffstat (limited to 'gcc/rust/rust-session-manager.cc')
0 files changed, 0 insertions, 0 deletions