By default, SNiFF+'s C/C++ Parser does not expand preprocessor macros when it parses source files. This approach has the advantage of speed, but occasionally some preprocessor macros confuse the Parser.
For example, macros that make the non-preprocessed source code syntactically incorrect confuse the Parser and may result in incomplete symbolic information. Such macros are called non-syntactic macros.
SNiFF+ provides several mechanisms to solve these kinds of problems:
Note
SNiFF+'s C/C++ Parser handles preprocessor options (e.g., -
Idir
,
-I-
,
-nostdinc
) in accordance with ANSI standards.