Auto merge of #38087 - jooert:remove_unmarked, r=petrochenkov

Remove the `unmarked_api` feature

Closes #37981.
This commit is contained in:
bors 2016-12-04 19:47:18 +00:00
commit 341f084d8d
3 changed files with 4 additions and 26 deletions

View File

@ -2463,11 +2463,6 @@ The currently implemented features of the reference compiler are:
* `unboxed_closures` - Rust's new closure design, which is currently a work in
progress feature with many known bugs.
* `unmarked_api` - Allows use of items within a `#![staged_api]` crate
which have not been marked with a stability marker.
Such items should not be allowed by the compiler to exist,
so if you need this there probably is a compiler bug.
* `allow_internal_unstable` - Allows `macro_rules!` macros to be tagged with the
`#[allow_internal_unstable]` attribute, designed
to allow `std` macros to call

View File

@ -513,23 +513,7 @@ impl<'a, 'gcx, 'tcx> TyCtxt<'a, 'gcx, 'tcx> {
// handled by the lint emitting logic above.
}
None => {
// This is an 'unmarked' API, which should not exist
// in the standard library.
if self.sess.features.borrow().unmarked_api {
self.sess.struct_span_warn(span, "use of unmarked library feature")
.span_note(span, "this is either a bug in the library you are \
using or a bug in the compiler - please \
report it in both places")
.emit()
} else {
self.sess.struct_span_err(span, "use of unmarked library feature")
.span_note(span, "this is either a bug in the library you are \
using or a bug in the compiler - please \
report it in both places")
.span_note(span, "use #![feature(unmarked_api)] in the \
crate attributes to override this")
.emit()
}
span_bug!(span, "encountered unmarked API");
}
}
}

View File

@ -153,10 +153,6 @@ declare_features! (
// rustc internal
(active, staged_api, "1.0.0", None),
// Allows using items which are missing stability attributes
// rustc internal
(active, unmarked_api, "1.0.0", None),
// Allows using #![no_core]
(active, no_core, "1.3.0", Some(29639)),
@ -333,6 +329,9 @@ declare_features! (
(removed, test_removed_feature, "1.0.0", None),
(removed, visible_private_types, "1.0.0", None),
(removed, unsafe_no_drop_flag, "1.0.0", None),
// Allows using items which are missing stability attributes
// rustc internal
(removed, unmarked_api, "1.0.0", None),
);
declare_features! (