How would you go about it?
I'd use a single NUMBER
token. I don't see any reason to make the parser care which type of numeric literal it's looking at.
Of course, it's possible that your full grammar does actually involve places where only certain formats of numeric literals are allowed, although my general inclination about that sort of thing is "yuk". The most likely possibility is that there is some rule in which an integer constant is ok, but a floating point constant is not. In that case, you're not going to get good error messages for that particular production unless you provide a different alias for floating point numbers than for integers. On the whole, though, I'm sticking with "yuk".
If you have a single numeric token type, with alias "number", then the errors should work out fine.