about summary refs log tree commit diff
path: root/src/libcore
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2019-10-03 23:29:48 +0000
committerbors <bors@rust-lang.org>2019-10-03 23:29:48 +0000
commit31d75c4e9c5318e880601d3c2cc71e5df094a120 (patch)
tree715665644e650d0e3b22ced38a144b586a3616bf /src/libcore
parent032a53a06ce293571e51bbe621a5c480e8a28e95 (diff)
parentcc5dcfaada556c5b28f7e95a26d42119bd5e98cc (diff)
downloadrust-31d75c4e9c5318e880601d3c2cc71e5df094a120.tar.gz
rust-31d75c4e9c5318e880601d3c2cc71e5df094a120.zip
Auto merge of #65076 - tmandry:rollup-ka7nzb6, r=tmandry
Rollup of 11 pull requests

Successful merges:

 - #61879 (Stabilize todo macro)
 - #64675 (Deprecate `#![plugin]` & `#[plugin_registrar]`)
 - #64690 (proc_macro API: Expose `macro_rules` hygiene)
 - #64706 (add regression test for #60218)
 - #64741 (Prevent rustdoc feature doctests)
 - #64842 (Disallow Self in type param defaults of ADTs)
 - #65004 (Replace mentions of IRC with Discord)
 - #65018 (Set RUST_BACKTRACE=0 in tests that include a backtrace in stderr)
 - #65055 (Add long error explanation for E0556)
 - #65056 (Make visit projection iterative)
 - #65057 (typo: fix typo in E0392)

Failed merges:

r? @ghost
Diffstat (limited to 'src/libcore')
-rw-r--r--src/libcore/macros.rs16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/libcore/macros.rs b/src/libcore/macros.rs
index ef91c3559d8..ca1b06fb81a 100644
--- a/src/libcore/macros.rs
+++ b/src/libcore/macros.rs
@@ -465,7 +465,7 @@ macro_rules! writeln {
 /// The unsafe counterpart of this macro is the [`unreachable_unchecked`] function, which
 /// will cause undefined behavior if the code is reached.
 ///
-/// [`panic!`]:  ../std/macro.panic.html
+/// [`panic!`]: ../std/macro.panic.html
 /// [`unreachable_unchecked`]: ../std/hint/fn.unreachable_unchecked.html
 /// [`std::hint`]: ../std/hint/index.html
 ///
@@ -474,6 +474,7 @@ macro_rules! writeln {
 /// This will always [`panic!`]
 ///
 /// [`panic!`]: ../std/macro.panic.html
+///
 /// # Examples
 ///
 /// Match arms:
@@ -525,6 +526,9 @@ macro_rules! unreachable {
 /// code type-check, or if you're implementing a trait that requires multiple
 /// methods, and you're only planning on using one of them.
 ///
+/// There is no difference between `unimplemented!` and `todo!` apart from the
+/// name.
+///
 /// # Panics
 ///
 /// This will always [panic!](macro.panic.html)
@@ -579,8 +583,10 @@ macro_rules! unimplemented {
 /// Indicates unfinished code.
 ///
 /// This can be useful if you are prototyping and are just looking to have your
-/// code typecheck. `todo!` works exactly like `unimplemented!`. The only
-/// difference between the two macros is the name.
+/// code typecheck.
+///
+/// There is no difference between `unimplemented!` and `todo!` apart from the
+/// name.
 ///
 /// # Panics
 ///
@@ -602,8 +608,6 @@ macro_rules! unimplemented {
 /// `baz()`, so we can use `todo!`:
 ///
 /// ```
-/// #![feature(todo_macro)]
-///
 /// # trait Foo {
 /// #     fn bar(&self);
 /// #     fn baz(&self);
@@ -629,7 +633,7 @@ macro_rules! unimplemented {
 /// }
 /// ```
 #[macro_export]
-#[unstable(feature = "todo_macro", issue = "59277")]
+#[stable(feature = "todo_macro", since = "1.39.0")]
 macro_rules! todo {
     () => (panic!("not yet implemented"));
     ($($arg:tt)+) => (panic!("not yet implemented: {}", $crate::format_args!($($arg)+)));