Argentina has made it legal for homosexual partners to marry each other, despite the issue generating significant controversy.

The law, legalising the unions, was passed by the Argentine Senate, after it was agreed by the Chamber of Deputies at an earlier vote.

The legislation only just passed after securing 33 votes in favour, with 27 against and three abstaining.

As the law was being debated demonstrators made their views known outside the Congress building, both for and against the change.

Argentina becomes the first South American country to allow homosexual marriage nationwide after already legalising adoption by homosexual partners, despite strong opposition from the Catholic Church.

Homosexual marriage is legal in Mexico City, while civil unions are allowed in Uruguay and parts of Brazil and Mexico.

The new law has the backing of Cristina Fernandez, the President of Argentina.