According to the school's website, their dress code prohibits "Clothing and accessories that display profanity, violence, discriminatory messages or sexually suggestive phrases are not to be worn at school or school functions."
Logan Co. Schools Dress Code
In other words, the shirt is perfectly acceptable.
No, it wasn't. The school can't be expected to itemize every single example of clothing that's considered inappropriate. Who doesn't understand that? That gives the principal the latitude to make judgement calls based on a variety of factors. Now, considering the fact that school shootings have taken place, and considering that recent school shootings have involved semiautomatic weapons (like an AR-15), and considering that the gun debate is a highly emotionally-charged one, it's perfectly reasonable to expect that any school principal will want to stop a student from wearing a t-shirt with a gun on it before it becomes 15 students wearing t-shirts with guns on them, all of them screaming about how they should be able to do so because Johnny did.
And who doesn't understand that teenagers are always pushing the envelope with adults and being a royal pain in the ass to everyone around them?
Beyond the absurdity of asking for itemization, it's arguably in one of the expressed categories (violence).