Italy extended their unbeaten run to 30 games following a 1-0 victory over 10-men Wales at Stadio Olimpico.
Despite defeat, Wales will also progress into the last 16 after finishing above Switzerland in second place on goal difference.
Matteo Pessino scored the sole goal for Italy and Roberto Mancini's side now stretched their winning run to 11 games with as many clean sheets.
Gareth Bale blazed over a glorious chance to equalise and is yet to score in the tournament following a penalty miss against Turkey in the previous game.
Stats of the day
Italy equaled their previous record for most games unbeaten (30). The national side achieved the same accomplishment between 1935 to 1939.
Ethan Ampadu became the youngest player in European Championships history to be shown a straight red card, aged 20 years and 279 days.
What's next for both sides
The hosts will play the runners-up of Group C (Austria, the Netherlands or Ukraine) while Wales will play the runners-up from Group B (Belgium, Russia, Finland or Denmark).
North Macedonia vs Netherlands 17:00 BST
Already group winners of Group C, Netherlands can afford to take their foot off the pedal and rotate against rock-bottom North Macedonia.
With already five goals in the tournament, Frank de Boer will fancy his chances of entertaining the Dutch fans even more at Euro 2020 against a minnow side with a minus three goal difference.
Ukraine vs Austria 17:00 BST
The two sides collide in Bucharest, Romania, with a draw more than likely enough to see both teams through to the last 16.
Russia vs Denmark 20:00 BST
Russia collide against Denmark in a crucial Group B fixture in Copenhagen. Both teams have a chance of progressing into the next phase of the tournament. They are second and third place in the group, respectively.
Finland vs Belgium 20:00 BST
A victory for Belgium can guarentee them top place in Group B while a win will see Finland progress and frog leap Roberto Martinez's men.