PM calls election for May 18