about summary refs log tree commit diff
diff options
context:
space:
mode:
authorCorey Farwell <coreyf@rwell.org>2017-02-14 10:07:33 -0500
committerGitHub <noreply@github.com>2017-02-14 10:07:33 -0500
commit32b8f4ec98dc77b1f5611478228c446d5faba7e5 (patch)
tree4ba5bf1fdefcceec25221696774a6970f6115317
parentc9737af4eda5f52c459eadc35fd932738b3017d6 (diff)
parent07b3a8bd60ff71c0519fc68068930edbbe767272 (diff)
downloadrust-32b8f4ec98dc77b1f5611478228c446d5faba7e5.tar.gz
rust-32b8f4ec98dc77b1f5611478228c446d5faba7e5.zip
Rollup merge of #39772 - cseale:staged_api_whitelist_removal, r=est31
Adding compile fail test for staged_api feature

Issue #39059
r? @est31

@est31 running the tests for this feature fails. Is that expected since this is the `compile-fail`suite?

I copied this test from the run-pass suite: `rust/src/test/run-pass/reachable-unnameable-type-alias.rs`. What are the differences between these suites in operation and why they are used?
-rw-r--r--src/test/compile-fail/feature-gate-staged_api.rs24
-rw-r--r--src/tools/tidy/src/features.rs2
2 files changed, 25 insertions, 1 deletions
diff --git a/src/test/compile-fail/feature-gate-staged_api.rs b/src/test/compile-fail/feature-gate-staged_api.rs
new file mode 100644
index 00000000000..014a0aaaf68
--- /dev/null
+++ b/src/test/compile-fail/feature-gate-staged_api.rs
@@ -0,0 +1,24 @@
+// Copyright 2016 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+#![stable(feature = "a", since = "b")]
+//~^ ERROR stability attributes may not be used outside of the standard library
+mod inner_private_module {
+    // UnnameableTypeAlias isn't marked as reachable, so no stability annotation is required here
+    pub type UnnameableTypeAlias = u8;
+}
+
+#[stable(feature = "a", since = "b")]
+//~^ ERROR stability attributes may not be used outside of the standard library
+pub fn f() -> inner_private_module::UnnameableTypeAlias {
+    0
+}
+
+fn main() {}
diff --git a/src/tools/tidy/src/features.rs b/src/tools/tidy/src/features.rs
index 707d5da50bf..cb6e73237d5 100644
--- a/src/tools/tidy/src/features.rs
+++ b/src/tools/tidy/src/features.rs
@@ -167,7 +167,7 @@ pub fn check(path: &Path, bad: &mut bool) {
     // FIXME get this whitelist empty.
     let whitelist = vec![
         "abi_ptx", "simd", "static_recursion",
-        "cfg_target_has_atomic", "staged_api",
+        "cfg_target_has_atomic",
         "unboxed_closures", "stmt_expr_attributes",
         "cfg_target_thread_local", "unwind_attributes",
         "inclusive_range_syntax"