add cases in compiler