Novak Djokovic’s bid to claim a landmark 100th ATP title remained on track as he overcame talented teenager Jakub Mensik in the quarter-finals of the Shanghai Masters.
The Serbian fourth seed lost the first set on a tie-break to the Czech 19-year-old but battled back for a 6-7 (4-7) 6-1 6-4 victory.
Djokovic, 37, will face American world number seven Taylor Fritz in Saturday’s second semi-final.
Fritz, 26, comfortably beat Belgium’s David Goffin 6-3 6-4 on Friday to book his place in the last four. It extended a run that has seen Fritz progress past the third round for the first time in Shanghai.
After reaching his 78th Masters 1,000 semi-final, Djokovic was full of praise for his much younger opponent.
“Jakub is someone I’ve been following in the last three, four years,” he said. “We went toe-to-toe until the last moment, until the last game.
“I could see today why he is one of the best servers we have in the game – and he’s only 19.
“I think the future is very bright for him. He knows that I am always there for him, whatever he needs.”
Mensik held his nerve in the opening set against Djokovic, the 24-time Grand Slam champion.
Djokovic, a record four-time winner of the tournament, was able to regroup after a scrappy performance in the tie-break and breezed through the second set, before putting the match to bed after two hours and 21 minutes.
Although US Open runner-up Fritz might prove a tough test for Djokovic, the decorated veteran holds a 9-0 career record from their past meetings.
Fritz broke in the second and sixth games to take the opening set against 66th-ranked Goffin.
Goffin looked stronger as the match continued, but he could not quite find the same form that brought him victory against second seed Alexander Zverev in the previous round.
“I’m really happy with how I played,” said Fritz.
“[Goffin’s] such an incredible returner, I had to stay extremely focused, even more focused than normal on my service games.”
Saturday’s first singles semi-final features Italy’s world number one Jannik Sinner and Czech player Tomas Machac, who beat Carlos Alcaraz on Thursday.