}
}
- fn check_trait_item(&mut self, cx: &EarlyContext, item: &TraitItem) {
- if !in_macro(item.span) {
- // Match only constants...
- if let TraitItemKind::Const(ref var_type, _) = item.node {
- self.visit_type(var_type, cx);
- }
- }
- }
-
- fn check_impl_item(&mut self, cx: &EarlyContext, item: &ImplItem) {
- if !in_macro(item.span) {
- // Match only constants...
- if let ImplItemKind::Const(ref var_type, _) = item.node {
- self.visit_type(var_type, cx);
- }
- }
- }
+ // Don't check associated consts because `'static` cannot be elided on those (issue #2438)
}
24 | const VAR_ARRAY: &'static [u8; 1] = b"T"; // ERROR Consider removing 'static.
| -^^^^^^^-------- help: consider removing `'static`: `&[u8; 1]`
-error: Constants have by default a `'static` lifetime
- --> $DIR/const_static_lifetime.rs:40:23
- |
-40 | const TRAIT_VAR: &'static str;
- | -^^^^^^^---- help: consider removing `'static`: `&str`
-
-error: Constants have by default a `'static` lifetime
- --> $DIR/const_static_lifetime.rs:44:22
- |
-44 | const IMPL_VAR: &'static str = "var";
- | -^^^^^^^---- help: consider removing `'static`: `&str`
-
-error: Constants have by default a `'static` lifetime
- --> $DIR/const_static_lifetime.rs:48:23
- |
-48 | const TRAIT_VAR: &'static str = "foo";
- | -^^^^^^^---- help: consider removing `'static`: `&str`
-
-error: aborting due to 16 previous errors
+error: aborting due to 13 previous errors