Location.ErrorSourceFor a detailed explanation on error reporting, refer to the relevant part of the tutorial.
Register an exception handler. Exception registered this way will be properly displayed by report_exception.
Convert an error to an extension point. The compiler recognizes this and displays the error properly.
Raise a compiler Parsing.Location.Error exception. The composition of Location.Error.createf with Location.Error.raise is the same as Location.raise_errorf.
Update where the error is located. The old location will be overwritten.