My problem is that society doesn't approve of adding 2 words together that are either factual or effectively harmless. Calling someone black is fine, calling someone a b@stard is fine, but combine the two and you've committed a horrid hate crime. It's bullshit! There is nothing racist about calling someone a black b@stard, unless of course you are only verbally attacking them because they are black, rather than because they are a bastard.
Plus, what if said black/gay person is actually a b@stard as described in Oxford dictionary?