Dutchman Tom Dumoulin overcame an 'emergency' toilet break to hang on to the leader's pink jersey after a thrilling 16th Queen stage won by home favourite Vincenzo Nibali.

Sunweb's Dumoulin got off his bike with 33km of the 222km stage from Rovetta to Bormio left, dashing down an embankment after being hit by stomach problems.

Rather than wait for him, one of the 'unwritten rules' in cycling, the Movistar team put the hammers down and sprinted off up the Umbrail Pass, the third and final major climb of the day.

The peloton's behaviour caused a storm on Twitter with viewers criticising the lack of respect for Dumoulin's misfortune which looked like costing him the lead.

Movistar's Nairo Quintana looked set to claim the Maglia Rosa but Dumoulin clawed back some time to stay ahead by 31 seconds, having begun the day two minutes 41 seconds ahead.

"I just had problems, I needed to take a dump - I couldn't hold it anymore," Duumolin told reporters.

"It was after the first time of the Stelvio I began to feel it in the downhill. I had to stop, it was not possible to continue anymore.

"I decided to fight and fight and fight, and then take conclusions after the finish. That's what I did. I think that's good, but I'm very disappointed with today, of course."

Team Sky's Mikel Landa, the last surviving member of a breakaway group, had bravely struck out for the stage win and crested the final climb ahead but Bahrain-Merida's Nibali joined him on the final descent and won a two-up sprint to the line.

"It was a spectacular stage. There was climbing, descending, and then sprinting at the end there against Mikel Landa," said Nibali. "I'm closer now but Dumoulin has the advantage of the time trial in Milan."

Nibali, Italy's first stage winner this year, moved into third, one minute 12 seconds off the pace. 

Ireland's Philip Deignan finished in 57th place on the day, 30:07 behind the leaders, while Sam Bennett was a further 17:01 back in 100th place. Deignan is 46th in the overall standings with Bennett 163rd.

Stage 17 on Wednesday involves a 219 km ride from Tirano to Canazei.