about summary refs log tree commit diff
diff options
context:
space:
mode:
authorTyler Mandry <tmandry@gmail.com>2018-03-20 23:01:42 -0500
committerTyler Mandry <tmandry@gmail.com>2018-03-21 00:26:00 -0500
commit94bdeb64f96b266d990ba7b76cd78a1e2ed1977f (patch)
tree24608542a81d757cb578acdd9956944f8a37cfc5
parent1937661961fa54aa2bce8c301d85536916224a74 (diff)
downloadrust-94bdeb64f96b266d990ba7b76cd78a1e2ed1977f.tar.gz
rust-94bdeb64f96b266d990ba7b76cd78a1e2ed1977f.zip
termination_trait: Add () example to error message
-rw-r--r--src/libstd/process.rs2
-rw-r--r--src/test/compile-fail/rfc-1937-termination-trait/termination-trait-main-i32.rs2
-rw-r--r--src/test/ui/rfc-1937-termination-trait/termination-trait-main-wrong-type.stderr2
3 files changed, 3 insertions, 3 deletions
diff --git a/src/libstd/process.rs b/src/libstd/process.rs
index d5ac2d19e83..a6aa3502f26 100644
--- a/src/libstd/process.rs
+++ b/src/libstd/process.rs
@@ -1443,7 +1443,7 @@ pub fn id() -> u32 {
 #[cfg_attr(not(test), lang = "termination")]
 #[unstable(feature = "termination_trait_lib", issue = "43301")]
 #[rustc_on_unimplemented =
-  "`main` can only return types that implement {Termination}, not `{Self}`"]
+  "`main` can only return types like `()` that implement {Termination}, not `{Self}`"]
 pub trait Termination {
     /// Is called to get the representation of the value as status code.
     /// This status code is returned to the operating system.
diff --git a/src/test/compile-fail/rfc-1937-termination-trait/termination-trait-main-i32.rs b/src/test/compile-fail/rfc-1937-termination-trait/termination-trait-main-i32.rs
index 67ee39d10d9..ffff33da581 100644
--- a/src/test/compile-fail/rfc-1937-termination-trait/termination-trait-main-i32.rs
+++ b/src/test/compile-fail/rfc-1937-termination-trait/termination-trait-main-i32.rs
@@ -8,7 +8,7 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
-// error-pattern:`main` can only return types that implement std::process::Termination, not `i32`
+// error-pattern:`main` can only return types like `()` that implement std::process::Termination, no
 fn main() -> i32 {
     0
 }
diff --git a/src/test/ui/rfc-1937-termination-trait/termination-trait-main-wrong-type.stderr b/src/test/ui/rfc-1937-termination-trait/termination-trait-main-wrong-type.stderr
index d09aac3ac2f..24371c27742 100644
--- a/src/test/ui/rfc-1937-termination-trait/termination-trait-main-wrong-type.stderr
+++ b/src/test/ui/rfc-1937-termination-trait/termination-trait-main-wrong-type.stderr
@@ -2,7 +2,7 @@ error[E0277]: the trait bound `char: std::process::Termination` is not satisfied
   --> $DIR/termination-trait-main-wrong-type.rs:11:14
    |
 LL | fn main() -> char { //~ ERROR
-   |              ^^^^ `main` can only return types that implement std::process::Termination, not `char`
+   |              ^^^^ `main` can only return types like `()` that implement std::process::Termination, not `char`
    |
    = help: the trait `std::process::Termination` is not implemented for `char`