Yeah, the current handling of target features is disappointingly "not Rusty" (i.e. instead of proper compile-time checks we have unsafe everywhere). Long time ago I wrote the following proposal, but unfortunately amount of development activity in this area is very small: