Police fired tear gas in downtown Rio de Janeiro on Monday when protesters demonstrating against a proposed government spending cap approached the headquarters of state oil company Petrobras, the GloboNews channel said.
The police action marks the first time a new wave of Brazilian street protests, this time against the signature economic policy of the months-old government of President Michel Temer, have turned violent.
The proposed constitutional limit on federal government spending would restrict budget increases to the inflation rate or 20 years. The measure is aimed at closing a budget deficit that exceeded 10 percent of gross domestic product last year and
reviving confidence in the midst of a two-year recession that has seen Brazil lose 12 million jobs.
Protesters say the measure will hurt health, education and other social spending.
The protests also come as Temer's union-movement opponents, plan a major strike against Petroleo Brasileiro SA, as Petrobras is formally known, over plans to sell assets and cut debt at the financially troubled oil company.
Police moved to disperse the demonstrators shortly before 8 p.m. (2200 GMT) after they veered off an approved route, left the main protest that was winding down Rio's main downtown avenue and allegedly provoked police, GloboNews said.
The press office of the Rio de Janeiro-state police declined to give an estimate of the crowd size or confirm if there were any arrests or injuries. Protest organizers said about 5,000 people participated.
The conflict occurred on a side street where the headquarters of Petroleo Brasileiro SA and state-owned development bank BNDES are located, the news agency said.
Small standoffs between police and protesters continued in adjacent streets and on a major public square for at least an hour.