FuelLabs / FuelLabs/sway

Conflicting implementations of trait error not emitted

Open
#5,686 2 comments 0 reactions 0 assignees View on GitHub
bug compiler compiler: frontend team:compiler
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.