Nicer semantic error messages, removed duplicates.