From c195783c05d253c8e32fb781cce1ae978f8bd6bd Mon Sep 17 00:00:00 2001 From: Huon Wilson Date: Mon, 2 Mar 2015 21:46:31 +1100 Subject: Feature gate `#[static_assert]`. The API this exposes is a little strange (being attached to `static`s), so it makes sense to conservatively feature gate it. If it is highly popular, it is possible to reverse this gating. --- src/libsyntax/feature_gate.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/libsyntax') diff --git a/src/libsyntax/feature_gate.rs b/src/libsyntax/feature_gate.rs index ffc136d5a1d..48c81280285 100644 --- a/src/libsyntax/feature_gate.rs +++ b/src/libsyntax/feature_gate.rs @@ -139,6 +139,9 @@ static KNOWN_FEATURES: &'static [(&'static str, &'static str, Status)] = &[ // Allows the use of rustc_* attributes; RFC 572 ("rustc_attrs", "1.0.0", Active), + + // Allows the use of `static_assert` + ("static_assert", "1.0.0", Active), ]; // (changing above list without updating src/doc/reference.md makes @cmr sad) @@ -241,7 +244,8 @@ pub static KNOWN_ATTRIBUTES: &'static [(&'static str, AttributeType)] = &[ ("no_split_stack", Whitelisted), ("no_stack_check", Whitelisted), ("packed", Whitelisted), - ("static_assert", Whitelisted), + ("static_assert", Gated("static_assert", + "`#[static_assert]` is an experimental feature, and has a poor API")), ("no_debug", Whitelisted), ("omit_gdb_pretty_printer_section", Whitelisted), ("unsafe_no_drop_flag", Gated("unsafe_no_drop_flag", @@ -769,4 +773,3 @@ pub fn check_crate(cm: &CodeMap, span_handler: &SpanHandler, krate: &ast::Crate) |ctx, krate| visit::walk_crate(&mut PostExpansionVisitor { context: ctx }, krate)) } - -- cgit 1.4.1-3-g733a5