Roger Federer continued his perfect record at the ATP Finals but had to go the distance to defeat Marin Cilic on Thursday.
There was little riding on the contest – Federer safely through to the semi-finals and Cilic eliminated – but they put on a show at the O2 regardless, the Swiss master coming out on top 6-7 (5-7) 6-4 6-1.
With a weakened field, Federer is the hot favourite to win the year-end tournament for a record-extending seventh time but being taken to three sets for a second match in a row could sow the seeds of doubt over the 36-year-old's fitness.
One of Dominic Thiem or David Goffin will hope that Federer will have been tired by his exertions, but he had plenty in the tank to overcome Cilic.
The Croatian's semi-final hopes went up in smoke after coughing up third-set leads against Alexander Zverev and Jack Sock and, having saved three break points in the first game, he had another advantage to protect after winning the first-set tie-break.
A beautiful backhand volley at the net and pumping forehand winner were the highlight shots in the shootout, but Federer served a warning early in the second set, forcing Cilic to scramble to deuce and eventually hold after a picture-perfect service return winner.
Neither man appeared to be running on full power in the dead rubber, and Federer drew level chiefly through Cilic's sudden loss of his senses, four errors in game 10 taking the contest to a decider.
Either side of simple holds, Federer turned the screw and produced another laser-guided forehand off the Cilic serve as the veteran won five games in a row to seize control.
Cilic wilted as another break of serve allowed Federer to serve out to love, manipulating the Croatian to his will to reach the final four as the man to beat.
Federer  bt Cilic  6-7 (5-7) 6-4 6-1
Federer – 33/30
Cilic – 36/43
Federer – 17/2
Cilic – 12/4
BREAK POINTS WON
Federer – 3/9
Cilic – 0/1
FIRST SERVE PERCENTAGE
Federer – 69
Cilic – 51
PERCENTAGE OF POINTS WON ON FIRST/SECOND SERVE
Federer – 77/66
Cilic – 70/55
Federer – 105
Cilic – 87