2.5. Expansion Barrier

The symbol 'noexpand' can be used to block expansion.
Start felix section to tut/macros/mac-2.05-0.flx[1 /1 ]
     1: #line 633 "./lpsrc/flx_tut_macro.pak"
     2: #include <flx.flxh>
     3: // expansion barrier
     4: macro val x = 1;
     5: macro proc k ()
     6: {
     7:   val yy = noexpand x + x; // x + 1
     8:   print noexpand x; print "+"; print x; print " -> "; print yy; endl;
     9: }
    10: macro x is x; // blocks x
    11: {
    12:   val x = 2;
    13:   k();
    14: };
End felix section to tut/macros/mac-2.05-0.flx[1]
Start data section to tut/macros/mac-2.05-0.expect[1 /1 ]
     1: 2+2 -> 4
End data section to tut/macros/mac-2.05-0.expect[1]