Messages.__init__ sometimes gets an int for loc

When that happens, loc is the linenumber of the error, not an object with a .lineno attribute.