full self-closing :empty exceptions