Roman Catholic authorities in the Brazilian city of Rio de Janeiro have promised an inquiry after riot police fired rubber bullets from a church.
Police clashed with anti-austerity demonstrators in the city amid a budget crisis in the state.
Many protesters were public workers who have not been paid in months.
Police used tear gas and stun grenades during the unrest near the state assembly building, where spending cuts were being debated.
Legislators are discussing steps to cover a huge deficit in the city's state budget.
Hundreds of public sector workers had gathered outside the assembly building to protest against the measures.
During the clashes, police officers entered a nearby church and fired rubber bullets from a window.
The Rio diocese protested against this "invasion" and said it would investigate.
Several people - both demonstrators and police - were injured.
'Clinging to their luxuries'
Speaking during the protests, a spokesman for the Oil Workers' Union in Rio, Ronaldo Moreno, said people were angry at those in power.
"As you can see here in Brazil, we have thieves coming and going in government, in the state government, in the federal government, in congress," he told the Associated Press.
"So the people can't stand it anymore. What is happening today is a fight by public workers but it is a fight by everyone. A fight against this corruption, these criminals, these politicians who are in the legislative assembly and don't want to let go. They only vote against the people. They don't want to get rid of their luxuries."
A number of protests have been held outside the assembly in recent weeks against the planned budget cuts, but Tuesday's events has been the most violent so far, the BBC's Julia Carneiro reports from Rio.
Last month the federal government froze Rio's accounts, ordering the state to pay unpaid debt amounting to millions of dollars.
The state declared a financial emergency ahead of the Rio Olympics earlier this year, saying it did not have the funds to provide security for the Games and to finish a metro line.