Italy's Martina Trevisan reached her first Grand Slam semi-final, beating Canada's Leylah Fernandez 6-2 6-7 (3-7) 6-3 at the French Open.
Trevisan started confidently against the 19-year-old 2021 US Open finalist, who struggled with a foot injury.
Fernandez saved a match-point in the second set, winning the tie-break comfortably as Trevisan faltered.
However, Trevisan, 28, recovered her poise to set up a meeting with Sloane Stephens or Coco Gauff.
The world number 59 won her first WTA title in Rabat the week before the French Open - she previously took four years out of the game and talked openly about her battles with an eating disorder in 2020.