Republicans muscled legislation through the US House on Thursday tightening federal restrictions on abortions as thousands of abortion foes marched outside in their annual protest. The vote came after internal divisions forced them into an embarrassing fumble of a similar bill.

Even as a White House veto threat all but ensured the bill would never become law, the House voted 242-179 to permanently bar federal funds for any abortion coverage. The measure would also block tax credits for many people and businesses buying accessing abortion coverage under President Obama’s health care law.

Republican leaders hurriedly pushed the measure to the House floor hours after abruptly abandoning another bill banning most late-term abortions after a rebellion led by female Republican lawmakers left them short of votes.

While that stumble underscored the challenges Republican leaders face in controlling their newly enlarged House majority, they were eager to act on the same day that March for Life protesters streamed through town to protest the Supreme Court’s 1973 Roe v Wade decision legalizing abortion.

The issue has long been one of the most bitter in America, pitting those who view abortion as the killing of a defenseless human being against those who argue women have the right to decide what happens to their body. In the four decades since the supreme court ruling, the divide has not narrowed, with polls indicating Americans remain about evenly split over the issue.

“I urge my colleagues to stand with the hundreds of thousands of people out on the Mall right now by voting for this bill,” said House majority leader Kevin McCarthy, a Republican. “Stand up and commit to creating an America that values every life.”

Democrats accused the Republicans of yet another assault on women’s freedom and painted Republicans as if they were merely trying to placate the marchers within hearing range.

“Women’s rights should not be theater, should not be drama,” said congressman Steve Cohen, a Democrat.

The approved bill would permanently ban the use of federal money for nearly all abortions – a prohibition that’s already in effect but which Congress must renew each year.

It would also go further. The bill would bar individuals and many employers from collecting tax credits for insurance plans covering abortion that they pay for privately and purchase through exchanges established under the Affordable Care Act.

The House had approved the same measure last year but it went nowhere in the Senate, then run by Democrats. Its fate in this year’s Republican-led Senate is uncertain.

In its veto message, the White House said: “The administration strongly opposes legislation that unnecessarily restricts women’s reproductive freedom and consumers’ private insurance options.”