#![warn(clippy::thread_local_initializer_can_be_made_const)] use std::cell::RefCell; fn main() { // lint and suggest const thread_local! { static BUF_1: RefCell = const { RefCell::new(String::new()) }; } //~^^ ERROR: initializer for `thread_local` value can be made `const` // don't lint thread_local! { static BUF_2: RefCell = const { RefCell::new(String::new()) }; } thread_local! { static SIMPLE:i32 = const { 1 }; } //~^^ ERROR: initializer for `thread_local` value can be made `const` // lint and suggest const for all non const items thread_local! { static BUF_3_CAN_BE_MADE_CONST: RefCell = const { RefCell::new(String::new()) }; static CONST_MIXED_WITH:i32 = const { 1 }; static BUF_4_CAN_BE_MADE_CONST: RefCell = const { RefCell::new(String::new()) }; } //~^^^^ ERROR: initializer for `thread_local` value can be made `const` //~^^^ ERROR: initializer for `thread_local` value can be made `const` }