French president vows to punish gun-toting rioters