diff --git a/infoerr/error.go b/infoerr/error.go index d0d4f96..3bea92e 100644 --- a/infoerr/error.go +++ b/infoerr/error.go @@ -25,6 +25,10 @@ func NewError ( ) ( err Error, ) { + if location.File() == nil { + panic("cannot create new Error in a blank file") + } + return Error { Location: location, message: message, diff --git a/parser/type.go b/parser/type.go index 2aeed40..46b8249 100644 --- a/parser/type.go +++ b/parser/type.go @@ -81,6 +81,8 @@ func (parser *parsingOperation) parseTypeSectionMember () ( if err != nil { return } member.permission = parser.token.Value().(types.Permission) + member.location = parser.token.Location() + // get name err = parser.nextToken(lexer.TokenKindName) if err != nil { return }