diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/ui/issues/issue-98299.rs | 18 | ||||
| -rw-r--r-- | src/test/ui/issues/issue-98299.stderr | 9 |
2 files changed, 27 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-98299.rs b/src/test/ui/issues/issue-98299.rs new file mode 100644 index 00000000000..63c058f91fc --- /dev/null +++ b/src/test/ui/issues/issue-98299.rs @@ -0,0 +1,18 @@ +use std::convert::TryFrom; + +pub fn test_usage(p: ()) { + SmallCString::try_from(p).map(|cstr| cstr); + //~^ ERROR: type annotations needed +} + +pub struct SmallCString<const N: usize> {} + +impl<const N: usize> TryFrom<()> for SmallCString<N> { + type Error = (); + + fn try_from(path: ()) -> Result<Self, Self::Error> { + unimplemented!(); + } +} + +fn main() {} diff --git a/src/test/ui/issues/issue-98299.stderr b/src/test/ui/issues/issue-98299.stderr new file mode 100644 index 00000000000..a61bffa91e7 --- /dev/null +++ b/src/test/ui/issues/issue-98299.stderr @@ -0,0 +1,9 @@ +error[E0282]: type annotations needed + --> $DIR/issue-98299.rs:4:5 + | +LL | SmallCString::try_from(p).map(|cstr| cstr); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type for enum `Result<SmallCString<{_: usize}>, ()>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0282`. |
