First of all, I want to make it clear that none of this is negatively affecting me or anyone specifically, as far as employment and performance goes.
I'm a software developer in small team. My boss, the person in question, is generally a good person. He's the team leader, the direct manager of the whole team. His role is senior software analyst and he has the experience to back it up. He does about 80% analysis and management, 20% coding. The problem is that when technology is concerned, he will often make up random stuff, often complete nonsense, that sounds good to non-programmers but is obviously incorrect to an experienced programmer. I could understand saying something isn't supported to the business when it would be a huge pain to do, but he does that even when talking between programmers, about basic programming facts. I'm decently experienced so I can tell when he's making things up, but I can tell the other team members aren't experienced enough to notice, or confident enough to question it.
There's roughly 3 "kinds" of things he'll say:
Basic, easily verifiable programming facts; this is often complete nonsense and not just wrong. For example, if we're investigating a bug in C# code where some amount is wrong in a report, he'll declare that it's because some boolean property wasn't initialized and it caused a memory corruption in the network stack. But the property in question is initialized, and if it wasn't, it would have a default value, and the default value would be good, and it's not related to the bug anyway because it's not even in the same project nor it it network related, and the report is executed on a different server. You get the idea.
Saying some authority figure doesn't support a certain feature, or that doing some arbitrary thing isn't legal. Except it is supported, or it is legal (approved with the company lawyer), or the figure of authority as nothing to do with this.
Just straight up saying something is not possible, or declaring that we can't do it, even if we already do it, easily, and it's already deployed in production. Often he'll say we must not do something, and later contradict himself and say we should do it, in the same situation for trivial things, like connecting to a database with read-only account to investigate a bug.
So far, I'm pretty good at working around this one-on-one, but it wastes a lot of time for the rest of the team. It's not too bad when it stays in the team, but it often cause issues when he interact with contractors, suppliers and other external resources. I have no idea how to even bring this up, and with whom. Should I even do anything about this?