Top seed Garbine Muguruza was a surprise casualty in the second round of the Grand Prix de SAR La Princess Lalla Meryem in Marrakech.
The Spaniard - a semi-finalist in 2014 - had cruised through her opening-round match against Darya Kasatkina, but she had no answer to Kristina Mladenovic and was beaten 7-6 (7-4) 7-6 (8-6).
A break-laden match saw each player lose their serve on five occasions and neither was able to pull away as both sets went to tie-breaks.
Mladenovic hung on in the first breaker after winning five successive points, before sealing the victory with her second match point in the final set.
She will meet Lara Arruabarrena in the quarter-finals, after the latter also caused an upset, beating eighth seed Monica Puig 7-5 6-2.
Muguruza's exit means Timea Bacsinszky, who eased past Tatjana Maria, is the highest seeded player left in the competition.
The second seed survived a tight opening set before breaking on three occasions in the second to secure a 7-6 (7-3) 6-3 win.
Next up for Bacsinszky is Anna Karolina Schmiedlova, the world number 46 having come from a set down to beat Maria Irigoyen 3-6 6-1 6-3.
Fourth seed Elina Svitolina also earned a last-eight place thanks to a 7-5 6-3 triumph over Christina McHale, while Timea Babos beat Teliana Pereira 6-0 6-7 (5-7) 6-4.
The remaining quarter-final spots were taken by Italian duo Flavia Pennetta and Karin Knapp, who recorded wins over Laura Siegemund and Roberta Vinci respectively.