Canada’s parliament has passed a bill that that will cover the full cost of contraception and diabetes drugs for Canadians.

The Liberal government said it is the initial phase of a plan that would expand to become a publicly funded national pharmacare programme.

But two provinces - Alberta and Quebec - have indicated they may opt-out of the programme, accusing Ottawa of interfering in provincial matters.

Opposition Conservative leader Pierre Poilievre, whose party is ahead in national polls by a wide margin, does not support the legislation.