Import path
import semmle.code.cpp.Preprocessor
Imports
Element | Provides the Element class, which is the base class for all classes representing C or C++ program elements.
|
Location | Provides classes and predicates for locations in the source code.
|
Classes
PreprocessorBranch | A C/C++ preprocessor branching directive: #if , #ifdef , #ifndef , or #elif .
|
PreprocessorBranchDirective | A C/C++ preprocessor branch related directive: #if , #ifdef , #ifndef , #elif , #else or #endif .
|
PreprocessorDirective | A C/C++ preprocessor directive. For example each of the following lines of code contains a PreprocessorDirective : #pragma once #ifdef MYDEFINE #include "myfile.h" #line 1 "source.c"
|
PreprocessorElif | A C/C++ preprocessor #elif directive. For example there is a PreprocessorElif on the third line of the following code: #ifdef MYDEFINE1 // ... #elif MYDEFINE2 // ... #else // ... #endif
|
PreprocessorElse | A C/C++ preprocessor #else directive. For example there is a PreprocessorElse on the fifth line of the following code: #ifdef MYDEFINE1 // ... #elif MYDEFINE2 // ... #else // ... #endif
|
PreprocessorEndif | A C/C++ preprocessor #endif directive. For example there is a PreprocessorEndif on the third line of the following code: #ifdef MYDEFINE // ... #endif
|
PreprocessorError | A C/C++ preprocessor #error directive. For example: #error "This configuration is not implemented."
|
PreprocessorIf | A C/C++ preprocessor #if directive. For example there is a PreprocessorIf on the first line of the following code: #if defined(MYDEFINE) // ... #endif For the related notion of a directive which causes branching (which includes #if , plus also #ifdef , #ifndef , and #elif ), see PreprocessorBranch .
|
PreprocessorIfdef | A C/C++ preprocessor #ifdef directive. For example there is a PreprocessorIfdef on the first line of the following code: #ifdef MYDEFINE // ... #endif The syntax #ifdef X is shorthand for #if defined(X) .
|
PreprocessorIfndef | A C/C++ preprocessor #ifndef directive. For example there is a PreprocessorIfndef on the first line of the following code: #ifndef MYDEFINE // ... #endif The syntax #ifndef X is shorthand for #if !defined(X) .
|
PreprocessorLine | A C/C++ preprocessor #line directive. For example: #line 1 "source.c"
|
PreprocessorPragma | A C/C++ preprocessor #pragma directive. For example: #pragma once
|
PreprocessorUndef | A C/C++ preprocessor #undef directive. For example there is a PreprocessorUndef on the second line of the following code: #ifdef MYMACRO #undef MYMACRO #endif
|
PreprocessorWarning | A C/C++ preprocessor #warning directive. For example: #warning "This configuration is not supported."
|