expression checking and error highlighting complete.