diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/resolve/resolve-speculative-adjustment.rs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/test/ui/resolve/resolve-speculative-adjustment.rs b/src/test/ui/resolve/resolve-speculative-adjustment.rs new file mode 100644 index 000000000..81f757829 --- /dev/null +++ b/src/test/ui/resolve/resolve-speculative-adjustment.rs @@ -0,0 +1,30 @@ +// Make sure speculative path resolution works properly when resolution +// adjustment happens and no extra errors is reported. + +struct S { + field: u8, +} + +trait Tr { + fn method(&self); +} + +impl Tr for S { + fn method(&self) { + fn g() { + // Speculative resolution of `Self` and `self` silently fails, + // "did you mean" messages are not printed. + field; + //~^ ERROR cannot find value `field` + method(); + //~^ ERROR cannot find function `method` + } + + field; + //~^ ERROR cannot find value `field` + method(); + //~^ ERROR cannot find function `method` + } +} + +fn main() {} |