Jean-Philippe Mateta scored twice as France fought back to beat 10-man Egypt 3-1 after extra time and reach the final of the men's Olympic football competition.
The result means Thierry Henry's side are guaranteed a first medal in the tournament in 40 years when they play Spain at the Parc des Princes on Friday (17:00 BST).
Mateta, 27, swept in a late equaliser from Michael Olise's pass to level the scores after Mahmoud Saber had powered in an opener for Egypt from close range in Lyon.
Crystal Palace forward Mateta headed the hosts in front nine minutes into extra time, after Omar Fayed had been dismissed for a second yellow card.
Faye's first booking came in second-half stoppage time as he protested against a French appeal for a penalty that was not awarded after a VAR review.
Olise rounded off the scoring for France, with Egypt now set to face Morocco in Nantes on Thursday (16:00) in the bronze-medal match.