Hmm, I think we should modify `bad_struct_kind_err` to look at `is_warning` and add a lint in the case of `is_warning == true`. This will also require adding a new lint corresponding to this future incompatibility. That said, I was going to do a quick PR to improve that tooling so as to address https://github.com/rust-lang/rust/issues/30746, so maybe I could just roll that change into that. 