diff options
| author | Oliver Scherer <github35764891676564198441@oli-obk.de> | 2019-12-08 01:43:10 +0100 |
|---|---|---|
| committer | Oliver Scherer <github35764891676564198441@oli-obk.de> | 2019-12-13 11:27:02 +0100 |
| commit | 5e17e3988165d3245e38af0b1c40cde47699f6a7 (patch) | |
| tree | 306b98ec54bf16d1327e0264b51d356bdba02d9b /src/libsyntax_expand | |
| parent | d75c7530f38b56c4d916195570cdcd18c12ce273 (diff) | |
Require stable/unstable annotations for the constness of all stable functions with a `const` modifier
Diffstat (limited to 'src/libsyntax_expand')
| -rw-r--r-- | src/libsyntax_expand/base.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libsyntax_expand/base.rs b/src/libsyntax_expand/base.rs index a4449ca5b1d..c7dce93f91b 100644 --- a/src/libsyntax_expand/base.rs +++ b/src/libsyntax_expand/base.rs @@ -775,6 +775,10 @@ impl SyntaxExtension { } let is_builtin = attr::contains_name(attrs, sym::rustc_builtin_macro); + let (stability, const_stability) = attr::find_stability(&sess, attrs, span); + if const_stability.is_some() { + sess.span_diagnostic.span_err(span, "macros can't have const stability attributes"); + } SyntaxExtension { kind, @@ -782,7 +786,7 @@ impl SyntaxExtension { allow_internal_unstable, allow_internal_unsafe: attr::contains_name(attrs, sym::allow_internal_unsafe), local_inner_macros, - stability: attr::find_stability(&sess, attrs, span), + stability, deprecation: attr::find_deprecation(&sess, attrs, span), helper_attrs, edition, |
