Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

stabilize #[panic_handler] #51366

Merged
merged 1 commit into from
Sep 8, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion src/libstd/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,6 @@
#![feature(doc_keyword)]
#![feature(panic_info_message)]
#![cfg_attr(stage0, feature(panic_implementation))]
#![cfg_attr(not(stage0), feature(panic_handler))]
#![feature(non_exhaustive)]

#![default_lib_allocator]
Expand Down
7 changes: 2 additions & 5 deletions src/libsyntax/feature_gate.rs
Original file line number Diff line number Diff line change
Expand Up @@ -487,7 +487,6 @@ declare_features! (

// RFC 2070: #[panic_implementation] / #[panic_handler]
(active, panic_implementation, "1.28.0", Some(44489), None),
(active, panic_handler, "1.30.0", Some(44489), None),

// #[doc(keyword = "...")]
(active, doc_keyword, "1.28.0", Some(51315), None),
Expand Down Expand Up @@ -674,6 +673,7 @@ declare_features! (
(accepted, proc_macro_path_invoc, "1.30.0", Some(38356), None),
// Allows all literals in attribute lists and values of key-value pairs.
(accepted, attr_literals, "1.30.0", Some(34981), None),
(accepted, panic_handler, "1.30.0", Some(44489), None),
);

// If you change this, please modify src/doc/unstable-book as well. You must
Expand Down Expand Up @@ -1143,10 +1143,7 @@ pub const BUILTIN_ATTRIBUTES: &'static [(&'static str, AttributeType, AttributeG
cfg_fn!(panic_implementation))),

// RFC 2070
("panic_handler", Normal, Gated(Stability::Unstable,
"panic_handler",
"#[panic_handler] is an unstable feature",
cfg_fn!(panic_handler))),
("panic_handler", Normal, Ungated),

("alloc_error_handler", Normal, Gated(Stability::Unstable,
"alloc_error_handler",
Expand Down
1 change: 0 additions & 1 deletion src/test/compile-fail/auxiliary/some-panic-impl.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
// no-prefer-dynamic

#![crate_type = "rlib"]
#![feature(panic_handler)]
#![no_std]

use core::panic::PanicInfo;
Expand Down
1 change: 0 additions & 1 deletion src/test/compile-fail/panic-handler-twice.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

// aux-build:some-panic-impl.rs

#![feature(panic_handler)]
#![feature(lang_items)]
#![no_std]
#![no_main]
Expand Down
1 change: 0 additions & 1 deletion src/test/run-make-fulldeps/issue-51671/app.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

#![crate_type = "bin"]
#![feature(lang_items)]
#![feature(panic_handler)]
#![no_main]
#![no_std]

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
// except according to those terms.

#![crate_type = "rlib"]
#![feature(panic_handler)]
#![no_std]

use core::panic::PanicInfo;
Expand Down
1 change: 0 additions & 1 deletion src/test/ui/consts/const-eval/const_panic_libcore_main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

#![crate_type = "bin"]
#![feature(lang_items)]
#![feature(panic_handler)]
#![feature(const_panic)]
#![no_main]
#![no_std]
Expand Down
12 changes: 6 additions & 6 deletions src/test/ui/consts/const-eval/const_panic_libcore_main.stderr
Original file line number Diff line number Diff line change
@@ -1,31 +1,31 @@
error: this constant cannot be used
--> $DIR/const_panic_libcore_main.rs:20:1
--> $DIR/const_panic_libcore_main.rs:19:1
|
LL | const Z: () = panic!("cheese");
| ^^^^^^^^^^^^^^----------------^
| |
| the evaluated program panicked at 'cheese', $DIR/const_panic_libcore_main.rs:20:15
| the evaluated program panicked at 'cheese', $DIR/const_panic_libcore_main.rs:19:15
|
= note: #[deny(const_err)] on by default
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error: this constant cannot be used
--> $DIR/const_panic_libcore_main.rs:23:1
--> $DIR/const_panic_libcore_main.rs:22:1
|
LL | const Y: () = unreachable!();
| ^^^^^^^^^^^^^^--------------^
| |
| the evaluated program panicked at 'internal error: entered unreachable code', $DIR/const_panic_libcore_main.rs:23:15
| the evaluated program panicked at 'internal error: entered unreachable code', $DIR/const_panic_libcore_main.rs:22:15
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error: this constant cannot be used
--> $DIR/const_panic_libcore_main.rs:26:1
--> $DIR/const_panic_libcore_main.rs:25:1
|
LL | const X: () = unimplemented!();
| ^^^^^^^^^^^^^^----------------^
| |
| the evaluated program panicked at 'not yet implemented', $DIR/const_panic_libcore_main.rs:26:15
| the evaluated program panicked at 'not yet implemented', $DIR/const_panic_libcore_main.rs:25:15
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

Expand Down
21 changes: 0 additions & 21 deletions src/test/ui/feature-gates/feature-gate-panic-handler.rs

This file was deleted.

11 changes: 0 additions & 11 deletions src/test/ui/feature-gates/feature-gate-panic-handler.stderr

This file was deleted.

1 change: 0 additions & 1 deletion src/test/ui/panic-handler/auxiliary/some-panic-impl.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
// no-prefer-dynamic

#![crate_type = "rlib"]
#![feature(panic_handler)]
#![no_std]

use core::panic::PanicInfo;
Expand Down
1 change: 0 additions & 1 deletion src/test/ui/panic-handler/panic-handler-bad-signature-1.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

// compile-flags:-C panic=abort

#![feature(panic_handler)]
#![no_std]
#![no_main]

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
error: return type should be `!`
--> $DIR/panic-handler-bad-signature-1.rs:22:6
--> $DIR/panic-handler-bad-signature-1.rs:21:6
|
LL | ) -> () //~ ERROR return type should be `!`
| ^^

error: argument should be `&PanicInfo`
--> $DIR/panic-handler-bad-signature-1.rs:21:11
--> $DIR/panic-handler-bad-signature-1.rs:20:11
|
LL | info: PanicInfo, //~ ERROR argument should be `&PanicInfo`
| ^^^^^^^^^
Expand Down
1 change: 0 additions & 1 deletion src/test/ui/panic-handler/panic-handler-bad-signature-2.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

// compile-flags:-C panic=abort

#![feature(panic_handler)]
#![no_std]
#![no_main]

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
error: argument should be `&PanicInfo`
--> $DIR/panic-handler-bad-signature-2.rs:21:11
--> $DIR/panic-handler-bad-signature-2.rs:20:11
|
LL | info: &'static PanicInfo, //~ ERROR argument should be `&PanicInfo`
| ^^^^^^^^^^^^^^^^^^
Expand Down
1 change: 0 additions & 1 deletion src/test/ui/panic-handler/panic-handler-bad-signature-3.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

// compile-flags:-C panic=abort

#![feature(panic_handler)]
#![no_std]
#![no_main]

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
error: function should have one argument
--> $DIR/panic-handler-bad-signature-3.rs:20:1
--> $DIR/panic-handler-bad-signature-3.rs:19:1
|
LL | fn panic() -> ! { //~ ERROR function should have one argument
| ^^^^^^^^^^^^^^^
Expand Down
1 change: 0 additions & 1 deletion src/test/ui/panic-handler/panic-handler-bad-signature-4.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

// compile-flags:-C panic=abort

#![feature(panic_handler)]
#![no_std]
#![no_main]

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
error: should have no type parameters
--> $DIR/panic-handler-bad-signature-4.rs:20:1
--> $DIR/panic-handler-bad-signature-4.rs:19:1
|
LL | / fn panic<T>(pi: &PanicInfo) -> ! {
LL | | //~^ ERROR should have no type parameters
Expand Down
1 change: 0 additions & 1 deletion src/test/ui/panic-handler/panic-handler-duplicate.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
// compile-flags:-C panic=abort

#![feature(lang_items)]
#![feature(panic_handler)]
#![no_std]
#![no_main]

Expand Down
4 changes: 2 additions & 2 deletions src/test/ui/panic-handler/panic-handler-duplicate.stderr
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
error[E0152]: duplicate lang item found: `panic_impl`.
--> $DIR/panic-handler-duplicate.rs:26:1
--> $DIR/panic-handler-duplicate.rs:25:1
|
LL | / fn panic2(info: &PanicInfo) -> ! { //~ ERROR duplicate lang item found: `panic_impl`.
LL | | loop {}
LL | | }
| |_^
|
note: first defined here.
--> $DIR/panic-handler-duplicate.rs:21:1
--> $DIR/panic-handler-duplicate.rs:20:1
|
LL | / fn panic(info: &PanicInfo) -> ! {
LL | | loop {}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@

#![feature(lang_items)]
#![feature(no_core)]
#![feature(panic_handler)]
#![no_core]
#![no_main]

Expand Down
1 change: 0 additions & 1 deletion src/test/ui/panic-handler/panic-handler-std.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

// error-pattern: duplicate lang item found: `panic_impl`.

#![feature(panic_handler)]

use std::panic::PanicInfo;

Expand Down
4 changes: 2 additions & 2 deletions src/test/ui/panic-handler/panic-handler-std.stderr
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
error[E0152]: duplicate lang item found: `panic_impl`.
--> $DIR/panic-handler-std.rs:18:1
--> $DIR/panic-handler-std.rs:17:1
|
LL | / fn panic(info: PanicInfo) -> ! {
LL | | loop {}
Expand All @@ -9,7 +9,7 @@ LL | | }
= note: first defined in crate `std`.

error: argument should be `&PanicInfo`
--> $DIR/panic-handler-std.rs:18:16
--> $DIR/panic-handler-std.rs:17:16
|
LL | fn panic(info: PanicInfo) -> ! {
| ^^^^^^^^^
Expand Down
1 change: 0 additions & 1 deletion src/test/ui/panic_implementation-closures.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@

#![crate_type = "rlib"]
#![no_std]
#![feature(panic_handler)]

#[panic_handler]
pub fn panic_fmt(_: &::core::panic::PanicInfo) -> ! {
Expand Down