Thank you mE for the 3.0 Beta.
Two observations:
1. There are differing levels of compatibility between ver2 and ver3 MCLs, and between SSA and non-SSA MCLs. When such events happen, users need to force module recompiles to refresh the MCLs, for example, through deletes of MCLs or by using the command Rebuild All Sources.
Would it be possible to incorporate a version and SSA flags into the MCLs, so the compiler can automatically check the compatibility of the MCLs, and regenerate the MCLs as necessary? This would help reduce the workload and confusion for new users.
2. The output line numbering for Assembly and Listing is wrong when #IFDEF/#ENDIF and #I compiler directives are used. Because of this the debugger source line location is also out-of-sync when debugging through the program
Stepping this program through the debugger illustrates the line out-of-sync problem.
Code: Select all
program A
'''''''''''''''''''''''''''''''''''''''''
' Program A is compiled for P30F6014A '
'''''''''''''''''''''''''''''''''''''''''
#IFDEF P30F6014A
include b ' content of b.mbas not important
#ENDIF
#IFDEF P33FJ128MC708
include c ' content of c.mbas not important
include d ' content of d.mbas not important
#ENDIF
#IFDEF P33FJ128MC708
#I z.sym ' content of z.sym not important
#ENDIF
dim ba,bb as byte
main:
bb = ba + bb
ba = bb + 1
goto main
end.