Ok, this comment is based on my attempts to import metadata, and might not apply to user-entered data...
Both a comma and a dash are considered to be tag delimiters. I'm thinking that Kovid might have used the regex word boundary (\b) function. But I'm guessing.
So "Fiction, Classic" or "Classic, Fiction" should be on the Tag List as
* Classic
* Fiction
* Fiction, Classic
* Classic, Fiction
Theoretically it makes absolutely no difference how you entered it as all of the words are present for a specific book. I'm not sure if calibre differentiates these three different references to the word "classic" or not.
It's been more than a week since I've been able to play in calibre - which is when I noticed this issue. While I was trying to determine if this was a bug or a feature, real life reared it's ugly head!