Facing each other for the first time since Eder proved Portugal's unlikely hero in the final of Euro 2016 at the same venue, a pair of all-star attacks found no way through against similarly elite defenses.
Didier Deschamps' hosts, who enjoyed the backing of 1,000 socially distanced fans within the cavernous arena, were unable to relocate the free-scoring form that saw them demolish Ukraine 7-1 in a midweek friendly.
Portugal followed up their 0-0 draw against Spain with another stalemate, although Pepe thought he had headed a 74th-minute winner, only to see the offside flag raised.
Lucas Hernandez made a last-ditch block to deny Cristiano Ronaldo on the end of Bernardo Silva's deft 24th-minute flick – the opening exchanges having been easy on the eye without yielding much in the way of goalmouth action.
Antoine Griezmann drifted in between Ruben Dias and Raphael Guerreiro latch on to Paul Pogba's floated pass and fire at Hugo Lloris, while Joao Felix incurred Ronaldo's wrath at the other end by flinging himself at Bruno Fernandes' free-kick to divert it away from the Juventus superstar.
Kylian Mbappe looked to rip the game open early in the second half, beating Danilo Pereira with a brilliant piece of skill, but Rui Patricio saved his dinked effort well.
Ronaldo uncharacteristically misjudged a half-volleyed attempt from Guerreiro's searching cross and it was an unerring set-piece delivery from the Borussia Dortmund man that picked out a stooping Pepe, whose celebrations were correctly cut short.
A more familiar match-winner almost presented himself in stoppage time, but Lloris got down sharply to repel Ronaldo at his near post.
What does it mean? All to play for in the return
Despite the lack of a decisive moment, this was a high-class encounter with some of Europe's finest talents catching the eye. Portugal and France have seven points from their three matches and expect them to add three more apiece before meeting again next month.
France travel to Croatia on Wednesday, when Portugal host Sweden.