An attack on a military hospital in Afghanistan has killed more than 30 people, the country’s Defence Ministry has said. An Islamic State affiliate claimed Wednesday’s attack on the hospital in Kabul’s heavily guarded diplomatic quarter, which set off clashes that lasted for several hours.