This is based on #5122, from which compiler/parser/source.go and the parser.Error.Error implementation are copied.
Add ErrorList, a list of Errors, and SourceSet, a struct containing Zed program text and source file offsets. In the future, compiler/semantic will use these types to return multiple errors that point into the program.
Remove ImproveError and NewError.
Change ParseZed to return an ErrorList when Parse fails.
Change ParseZed and ConcatSource to return a SourceSet.
In api.Error, replace the Info interface{} field with ComplationErrors parser.ErrorList.
This is based on #5122, from which compiler/parser/source.go and the
parser.Error.Error
implementation are copied.Add ErrorList, a list of Errors, and SourceSet, a struct containing Zed program text and source file offsets. In the future, compiler/semantic will use these types to return multiple errors that point into the program.
Remove ImproveError and NewError.
Change ParseZed to return an ErrorList when Parse fails.
Change ParseZed and ConcatSource to return a SourceSet.
In api.Error, replace the
Info interface{}
field withComplationErrors parser.ErrorList
.