If the requirement is a software must run on at least one of A, B, D – but the OP doesn't care which: That's not cross-platform, but "any-platform" (don't make that a tag, please!).
If however one needs a software which is (natively) available on more than one platform (say A+B, and ideally also C), that's already cross-platform. It does not necessarily have to run on all possible platforms for that. See also Wikipedia on this:
computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms.
Say I want a software that ideally runs on platforms A, B, and C – but at least on "as many as possible of them". With no OS tags, and no cross-platform tag, I'll have fun looking first for A+B, then A+C, then B+C. Now there is also D, which doubles the effort... (e.g. Linux, Mac, OS/2, Windows). Add the mobile world, and wait until we have "a few more questions" on our site, and it stops being fun. I'd give up looking for existing answers after 5 min, and don't care whether I create a duplicate: I have my requirement, I searched before, so I'm not to blame – I'd go right ahead and post my question.
Would there be a "cross-platform" tag, I could simply use that for my search. Result-sets would drastically shrink down, and I'd feel motivated trying to look for my "majors": "cross-platform A" (must support at least A and one other), and so on.
How could it be confusing?
If not clearly defined. It's neither "A or B", nor is it "everything which is in existence and no less". In simple terms: "software that works on more than one platform and/or operating system" (current excerpt), or alternatively "software that must work on more than one platform and/or operating system".
Should we keep it?
Definitely. And we should use it this way:
- if it's a strong requirement the software must run on more than one OS: use it!
- if it's a weak requirement (aka "nice-too-have"): don't use it, that belongs to the description