Is there a way to tell people they're wrong without making them feel like they're in a battle they have to win?
No, there isn't.
When you focus on someone being wrong rather than solving the problem, you are inviting conflict. And if you are the one firing the first shot, asking how you can convince the other person to stop the fighting is putting the cart before the horse.
Your previous post from April last year was asking when to look for your first job. I presume this is your first full-time job, and that you are still young (in your early 20s). Welcome to the working world -- as a new graduate/employee you are likely to be filled with youthful vim and vigor, but lacking in a bit of the practical perspective that comes with age and experience.
This entire question strikes me as a case where a lack of perspective has you digging yourself a hole you'll spend the next couple of years peering out of without understanding how you found yourself there.
My boss sometimes makes small mistakes ... he recently reported a bug caused by a virus on his computer to the bug tracking system.
You take this as a premise of your entire post. That these are "mistakes". Why?
Was the product working properly? No.
Was it unable to be reproduced? No.
That makes it a bug. A low-priority bug perhaps. A bug that shouldn't be fixed perhaps. But it certainly is a bug since the presence of something else on the machine caused your product not to work.
So why is it a mistake?
I am going to guess that you likely tie your shoes wrong quite often. Does that mean I should spend 5 minutes every morning lecturing you on how you are making small mistakes? Should I imply you are stubborn and/or incompetent?
Of course not. That would make me a jerk of Olympic caliber. So perhaps it isn't wise to do the equivalent to your boss over this?
Business is People
At the heart of any business are people. Us flawed human creations are prone to flights of whimsy, fickleness, defensiveness, and all sorts of other not-so-appealing characteristics. But there is hardly a job in the world that can be done with no contact with other people.
What age and experience brings most people is an understanding of the simple principle:
Business is People
Since people are these moody fickle creatures, it is best to avoid taking actions that will unleash that fickleness in full force.
So when our boss comes to us with a bug we may find dubious, we don't present data showing the boss explaining why they are objectively an idiot. We find ways to tactfully get the result we want without stomping on other people's toes. The Golden Rule applies to the office -- do not do unto others as you would not want done unto you.
In other words, "Don't be a jerk".
How to tackle the situation
First and foremost, try to understand the other person's point of view.
“If there is any one secret of success, it lies in the ability to get the other person’s point of view and see things from that person’s angle as well as from your own.” - Henry Ford
Your boss did what he did for a reason. That reason is not to make your life miserable. Rather than coming to the conclusion that he screwed up, why don't you take a far more human-friendly approach like asking him a simple question?
Hey boss, you registered this bug yesterday but I'm a little unclear on the details of what the issue is. Could you walk me through your thought process?
If it's a simple mistake, your boss will realize (while walking himself through his logic) that he made a mistake, and that should make it easy for him to take back the bug or otherwise fix his request. If it isn't a simple mistake, you now understand what he wants and what his logic is.
After he tells you what his logic is, don't respond with anything but a "Thank you." Take it back to your desk, think it over, and if you can find a better solution to the issue than the one he requested, bring it over to your boss.
Hey boss, you explained that you were running in to this bug. I tracked down the cause to X. Fixing X would require 60 man-hours, and would only help roughly 0.002% of our users. Should we go ahead with fixing X, or should we work on Y which is an issue for 30% of our users instead?
Can you see the difference? You are legitimately listening to his concerns, asking for him to make the decisions he is paid to make, and presenting him with information that will nudge him in the direction you want. You aren't telling him he made a mistake, or throwing data on why he is wrong at him, or otherwise digging yourself in to a hole.
In general, for any issue you may run in to where you think that the other person is being silly, take a step back, realize business is people, and:
- Clarify: Ask the other person to walk you through their thought process
- Listen: Don't formulate an argument, just listen and thank them
- Consider: Give it a good thought from both perspectives and come up with a solution
- Suggest: Present the information so the other person can feel like they own the solution (even if it's doing what you wanted to do anyway)