rust-lang / rust-lang/rfcs

RFC 401 should account for `Deref` coercions

Open
#1,593 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

T-lang
Dominant language
Markdown
Stars
6.6k
Forks
1.7k
Avg merge
16h 14m
Merged PRs (30d)
1

Description

RFC 401 specifies coercions in Rust. However, it doesn't deal with the case of coercions caused by a type implementing the Deref trait (specified in RFC 241). In particular, should coercions due to Deref be included in the transitivity case for implicit coercions? Currently the compiler does not (I'm not even sure of the precise behaviour when combining Deref coercions with other coercions.

cc https://github.com/rust-lang/rust/pull/33220

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read RFC 0401 on coercions and RFC 0241 on Deref conversions, then inspect the behavior discussed in rust-lang/rust#33220. Determine whether Deref coercions belong in the transitivity case and document the intended interactions with other coercions. The issue is several years old with no recent comments, so confirm that the question is still relevant before proceeding.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.