Conflicting implementations of trait error not emitted
- Dominant language
- Rust
- Stars
- 61.4k
- Forks
- 5.4k
- Avg merge
- 3h 33m
- Merged PRs (30d)
- 4
Description
This code does not emit conflicting implementations of trait error on the latest master. The error was correctly reported on `beta-5`.
```Sway
script;
struct S {}
trait Trait {}
impl Trait for S {}
impl Trait for S {}
fn main() {
}
```
The error is also not reported if the structure `S` is generic:
```Sway
script;
struct S {}
trait Trait {}
impl Trait for S {}
impl Trait for S {}
fn main() {
}
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Run both supplied Sway programs on the latest master and compare their diagnostics with beta-5. Trace the compiler path that checks conflicting trait implementations; done means both the nongeneric and generic-struct examples emit the expected conflicting-implementations error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100