- One person is too young (1083)
- One person is impotent, or it is otherwise impossible for the two to have intercourse (1084)
- One person is still under the terms of a previous marriage (1085)
- One person is baptized and the other isn't, leading to irreconcilable disparity of cult (1086)
- One person is a priest (1087)
- One person is under a perpetual vow of chastity (1088)
- The woman has been abducted. (1089)
- One person killed a former spouse, for the purposes of ending the marriage (1090)
- The two partners are directly related by blood, marriage or adoption (1091-4)
The local Bishop is able to waive any of these requirements, except for #5, 6, 8 and 9. Only the Vatican has the ability to waive those requirements, but they never waive the "marriage partners cannot be related" requirement in the direct line or in the second degree of the collateral line (1078).
Could it be possible for a Bishop to waive Rule #2, in order to allow for gay marriage? I'm not a lawyer, but I would guess that the answer is "no". That one isn't an isolated law; it's directly connected to several other laws, making it more difficult to change. There are also laws (i.e. not just this one) that state that two spouses must be of different genders.
Of course, there are many other laws and situations which prevent marriage from occurring; this is just a list of specific situations that make it impossible to contract a marriage in the first place.