Macro variables can be assigned a new value.
1: include "std"; 2: macro var mx1 = 1+y; 3: val y = 100; 4: print mx1; endl; // 101 5: { 6: macro mx1 = 3+y; // 103 [assignment!] 7: print mx1; endl; 8: }; 9: print mx1; endl; // 103 [uses assigned value] 10: 11: