about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorCharles Lew <crlf0710@gmail.com>2019-08-27 22:42:44 +0800
committerCharles Lew <crlf0710@gmail.com>2019-10-07 12:01:54 +0800
commite70ffed9cdb01ad9f2f27ef4f83de3ebb17f1270 (patch)
tree6594d9a806cc89493824cb64861429aab794fc88 /src/libsyntax
parent4ac4809ccf5f77083ae7155dcc83e921341c2614 (diff)
downloadrust-e70ffed9cdb01ad9f2f27ef4f83de3ebb17f1270.tar.gz
rust-e70ffed9cdb01ad9f2f27ef4f83de3ebb17f1270.zip
Add feature gate for raw_dylib.
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/feature_gate/active.rs3
-rw-r--r--src/libsyntax/feature_gate/builtin_attrs.rs8
2 files changed, 10 insertions, 1 deletions
diff --git a/src/libsyntax/feature_gate/active.rs b/src/libsyntax/feature_gate/active.rs
index 20a77fa37cf..195cd460ee3 100644
--- a/src/libsyntax/feature_gate/active.rs
+++ b/src/libsyntax/feature_gate/active.rs
@@ -522,6 +522,9 @@ declare_features! (
     /// Allows the definition of `const extern fn` and `const unsafe extern fn`.
     (active, const_extern_fn, "1.40.0", Some(64926), None),
 
+    // Allows the use of raw-dylibs (RFC 2627).
+    (active, raw_dylib, "1.39.0", Some(58713), None),
+
     // -------------------------------------------------------------------------
     // feature-group-end: actual feature gates
     // -------------------------------------------------------------------------
diff --git a/src/libsyntax/feature_gate/builtin_attrs.rs b/src/libsyntax/feature_gate/builtin_attrs.rs
index 80a80ff0a0d..0dc2f24a67b 100644
--- a/src/libsyntax/feature_gate/builtin_attrs.rs
+++ b/src/libsyntax/feature_gate/builtin_attrs.rs
@@ -276,7 +276,13 @@ pub const BUILTIN_ATTRIBUTES: &[BuiltinAttribute] = &[
         "the `link_args` attribute is experimental and not portable across platforms, \
         it is recommended to use `#[link(name = \"foo\")] instead",
     ),
-
+    gated!(
+        link_ordinal,
+        Whitelisted,
+        template!(List: "ordinal"),
+        raw_dylib,
+        experimental!(link_ordinal)
+    ),
     // Plugins:
     (
         sym::plugin_registrar, Normal, template!(Word),