Is there a hyphen in the term ‘gay marriage’? No. ‘Gay’ and ‘marriage’ are two separate words.
But the English language is a dynamic, evolving entity. The general pattern is this. New terms formed from two words become hyphenated as the term comes into common use. When the term becomes established, the hyphen is dropped, and the new term becomes a new word in its own right.
A familiar example is the word ’email’. This word started out as the two-word phrase ‘electronic mail’.
As soon as “electronic mail” came into common use with the advent of the Internet, the term ‘electronic mail’ became hyphenated (and simultaneously the word ‘electronic’ was abbreviated to ‘e’) and ‘electronic mail’ morphed into ‘e-mail’.
Today, a Google search for “e-mail” yields
About 4,450,000,000 results.
It’s an impressive result. But a Google search for “email” (no hyphen) yields more than twice that number! Clearly, the hyphenated term ‘e-mail’ is now somewhat archaic. Today, the correct term is ’email’. One word, no hyphen.
As more and more governmental jurisdictions around the world recognise “gay marriage”, we will see the same, familiar pattern instantiated again.
‘Gay marriage’ will very soon become ‘gay-marriage’ (hyphenated) or, more likely, ‘g-marriage’ (hyphenated and abbreviated).
By the time the children of these g-marriages are themselves old enough to g-marry, the hyphen itself will have fallen into disuse.
‘Gay marriage’ will morph into ‘g-marriage’ which will morph into ‘gmarriage’. It’s a linguistic inevitability.