Fix #2 (failure to detect undefined labels)
I already posted about this on the bug report: since no one has responded there I figured I'd open a pull request.
This should prevent undefined labels from being silently ignored and replaced with a jump to 0x1234. All it does is make the assembler return an error when an undefined label is encountered instead of pretending everything was successful.
If I had to guess, I'd say 0x1234 is being pushed so it can be detected later from elsewhere. However, the code to actually do this doesn't seem to ever have been implemented, so this is better than nothing.
I think the idea of 0x1234 is to be a placeholder for forward references, so the code comes out the right size and labels are in the right place on the second pass. Can you confirm that your fix works with code that has a forward reference? Do all the example easy6502 programs still work?
All the example programs with labels from here still compile and run: http://skilldrick.github.io/easy6502/
I thought that it might be for something like that as well; however a quick search through the source code didn't turn up any other occurrences of 0x1234. So if it is meant to do something like that, I'm not entirely sure how it is doing it.