diff options
| author | Michael Howell <michael@notriddle.com> | 2022-10-25 15:28:02 -0700 |
|---|---|---|
| committer | Michael Howell <michael@notriddle.com> | 2022-10-25 15:28:02 -0700 |
| commit | 8cf9ad634b049af8b9f442e5b31bc6a85c3a3392 (patch) | |
| tree | feccf66df9a2785b9de2bb31c683b5a2c7b30e78 | |
| parent | b205a5a67c3ababf7e7d6f47fe667f4dd5f12e58 (diff) | |
| download | rust-8cf9ad634b049af8b9f442e5b31bc6a85c3a3392.tar.gz rust-8cf9ad634b049af8b9f442e5b31bc6a85c3a3392.zip | |
diagnostics: add test case for issue 102354
| -rw-r--r-- | src/test/ui/suggestions/issue-102354.rs | 10 | ||||
| -rw-r--r-- | src/test/ui/suggestions/issue-102354.stderr | 24 |
2 files changed, 34 insertions, 0 deletions
diff --git a/src/test/ui/suggestions/issue-102354.rs b/src/test/ui/suggestions/issue-102354.rs new file mode 100644 index 00000000000..f881feb0060 --- /dev/null +++ b/src/test/ui/suggestions/issue-102354.rs @@ -0,0 +1,10 @@ +trait Trait { + fn func() {} +} + +impl Trait for i32 {} + +fn main() { + let x: i32 = 123; + x.func(); //~ERROR no method +} diff --git a/src/test/ui/suggestions/issue-102354.stderr b/src/test/ui/suggestions/issue-102354.stderr new file mode 100644 index 00000000000..4f76c5f2e75 --- /dev/null +++ b/src/test/ui/suggestions/issue-102354.stderr @@ -0,0 +1,24 @@ +error[E0599]: no method named `func` found for type `i32` in the current scope + --> $DIR/issue-102354.rs:9:7 + | +LL | x.func(); + | ^^^^ this is an associated function, not a method + | + = note: found the following associated functions; to be used as methods, functions must have a `self` parameter +note: the candidate is defined in the trait `Trait` + --> $DIR/issue-102354.rs:2:5 + | +LL | fn func() {} + | ^^^^^^^^^ +help: use associated function syntax instead + | +LL | i32::func(); + | ~~~~~~~~~ +help: disambiguate the associated function for the candidate + | +LL | <i32 as Trait>::func(x); + | ~~~~~~~~~~~~~~~~~~~~~~~ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. |
