1
0
mirror of https://github.com/ksherlock/x65.git synced 2024-06-02 18:41:34 +00:00

First column in Merlin mode recognizes scope braces ('{' and '}')

This commit is contained in:
Carl-Henrik Skårstedt 2016-03-17 21:33:39 -07:00
parent 955665c91c
commit c01b19a68c
4 changed files with 2 additions and 1 deletions

View File

@ -101,6 +101,7 @@ Primarily tested with personal archive of sources written for Kick assmebler, DA
* irp (indefinite repeat)
**FIXED**
* Merlin macro parameters are not required on the MAC line, scope braces ('{', '}') can be used in the first column in Merlin.
* First line of a Merlin macro was sometimes ignored, two sequential subtractions were ignored in expressions.
* Pushing source contexts (macro, rept, include etc.) will always increment the scope depth.
* Fixed REPT / LUP to not destroy local symbols in the scope it was used in while also destroying local symbols within the repeating block correctly

Binary file not shown.

Binary file not shown.

View File

@ -5700,7 +5700,7 @@ StatusCode Asm::BuildLine(strref line)
line.trim_whitespace();
bool force_label = charE==':' || charE=='$';
if (!force_label && Merlin() && (line || operation)) // MERLIN fixes and PoP does some naughty stuff like 'and = 0'
force_label = !strref::is_ws(char0) || char1==']' || charE=='?';
force_label = (!strref::is_ws(char0) && char0!='{' && char0!='}') || char1==']' || charE=='?';
else if (!Merlin() && line[0]==':')
force_label = true;
if (!operation && !force_label) {