AC Milan were made to wait for confirmed qualification from the Europa League group stage after being held to a 0-0 draw in a mediocre game at AEK Athens.
Home defender Helder Lopes ventured forward to fire in the first meaningful strike of the game after 14 minutes, but Gianluigi Donnarumma made the save.
AEK were making the more purposeful start to the game, with Milan struggling to muster up much meaningful possession, and midfielder Lazaros Christodoulopoulos had a shot blocked as they continued to force the pace.
The same player created more danger as the game approached the 20-minute mark, delivering a dangerous free kick that former Sunderland striker Fabio Borini, back helping his defence, just managed to deflect away from danger.
But Milan settled as the half wore on, and threatened when Leonardo Bonucci looked for Patrick Cutrone but his attempted through ball was intercepted.
And as the half-time break approached, they stepped up the pace of their passing to again try to find a way behind the home defence, but the final pass just ran away from the marauding Riccardo Montolivo.
But back came AEK, and with five minutes left Cutrone blocked an effort from Anastasios Bakasetas.
It took Milan 44 minutes to muster their first shot on goal of the game, but it was hardly worth the wait as Bonucci fired a wayward effort high and wide.
And a half in which neither goalkeeper was tested ended with Rodrigo Galo curling a free kick wide of Donnarumma's far post.
Milan brought on Suso for Cutrone at the break but saw the hosts begin the second period in the same positive way in which they had started the first, with Ognjen Vranjes heading wide and Andre Simoes forcing a block from Donnarumma.
But with almost an hour played, Milan were within a whisker of opening the scoring as Montolivo thumped a fierce effort against the post and saw it cannon to safety.
AEK rang the changes on the hour, introducing Marko Livaja for Christodoulopoulos, but Milan came close again when, with Suso involved, Calhanoglu's strike forced Giannis Anestis into a save.
But a scrappy final 10 minutes brought little in the way of chances or excitement, despite Milan attempting to up the pace as they sought the goal that would seal qualification, with the game degenerating into a succession of untidy challenges and free kicks.