You copied the Doc URL to your clipboard.

LISA+ preprocessing according to scope

The LISA+ preprocessor treats the scopes differently.

  • It never replaces or executes any #includes.
  • It replaces macros only inside behavior code, nowhere else.
  • It evaluates conditional compilation everywhere and macros evaluated in #if expressions.
  • It ignores the preprocessor constructs (#include, #define, #if) in non-behavior sections, passing them on intact to the C++ compiler, which deals with them. It makes sure that the C++ compiler sees the same set of preprocessor symbols that it saw, so that the LISA+ preprocessor and the C++ compiler perform this conditional compilation in the same way.


Use LISA+ features rather than preprocessor macros to avoid redundancy in the code.
Was this page helpful? Yes No