parser: fix invalid segment override on EQU FAR pointers#243
Conversation
539c0a4 to
4094093
Compare
|
Rebased and committed. |
|
This patch caused multiple tests to fail, because a segment override prefix was being dropped. Please make sure "make travis" patches before submitting a pull request. I have reverted this patch, pending a proper fix. |
…from 8981724); fixes netwide-assembler#243 and label memory leak
4094093 to
73c202f
Compare
|
@hpax I've addressed the segment override regression by refining the parser condition and ensured all local tests (including the failing The CI checks are green. Please take another look. |
|
Could you please add a proper commit message and Signed-off-by: line to your commit (see the I'm a bit confused about the asm/labels.c change; that looks like a separate memory leak fix? That is of course entirely legitimate (and appreciated), but it should be a separate patch with a separate patch description. I really do appreciate your effort on this. |
Signed-off-by: alexvoste <meshoff@proton.me>
Signed-off-by: alexvoste <meshoff@proton.me>
73c202f to
4842fa9
Compare
|
The SoB line is great, but a commit description is really valuable when trying to figure out 20 years from now what is broken when something needed to change. A description of the problem and why the fix is the correct one would be really appreciated. |

The parser incorrectly treated colons as memory segment overrides inside EQU directives because of an inverted far_jmp_ok check. This regression was introduced in commit 8981724. Removing the incorrect negation restores proper parsing of FAR pointer constants.
Fixes #242