Calling someone stupid is another form of social poo-poo. There's no utility to it. Calling someone's action or behavior stupid, on the other hand, is direct and constructive. You are demanding that someone do something specifically different in order to improve. Calling the person an idiot is not constructive - it is only an insult. On the other hand, if the person said, "You're obviously an idiot because you consistently say stupid things, and you're dragging this project down, therefore I want you off the team," that may be hurtful, but it is constructive. It's a demand for change for the better.