It's annoying that units repeat failed shots when none of the circumstances have changed. I had a juggernaut with 5-8 readily available targets and a turret behind a wall, and whenever it eliminated an explicitly given target it reverted to shooting at the turret and hitting the wall instead. I have to go back there every ten seconds to make it shoot at a relevant target.
When an automatically acquired target cannot be hit by a shot, the shot should be held, or an available target should be fired upon instead.
When a target is explicitly specified, units should wait for a clear shot/reposition for a clear shot.
When a stationary target cannot be shot from the current position, the unit should move if able, and otherwise warn you/refuse the order. (That's impossible commander.)