Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
clang-tools-extra/docs/pp-trace.rst
Show First 20 Lines • Show All 273 Lines • ▼ Show 20 Lines | |||||
`Ident <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a3683f1d1fa513e9b6193d446a5cc2b66>`_ Callback | `Ident <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a3683f1d1fa513e9b6193d446a5cc2b66>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
Ident is called when a #ident or #sccs directive is read. | Ident is called when a #ident or #sccs directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ================================================== ============================== ================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ================================================== ============================== ================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
str (name) const std::string The text of the directive. | str (name) const std::string The text of the directive. | ||||
============== ================================================== ============================== ============================== | ============== ================================================== ============================== ================================================== | ||||
Example::: | Example::: | ||||
- Callback: Ident | - Callback: Ident | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-ident.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-ident.cpp:3:1" | ||||
str: "$Id$" | str: "$Id$" | ||||
`PragmaDirective <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a0a2d7a72c62184b3cbde31fb62c6f2f7>`_ Callback | `PragmaDirective <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a0a2d7a72c62184b3cbde31fb62c6f2f7>`_ Callback | ||||
Show All 17 Lines | |||||
`PragmaComment <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ace0d940fc2c12ab76441466aab58dc37>`_ Callback | `PragmaComment <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ace0d940fc2c12ab76441466aab58dc37>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaComment is called when a #pragma comment directive is read. | PragmaComment is called when a #pragma comment directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
Kind ((name)|(null)) const IdentifierInfo The comment kind symbol. | Kind ((name)|(null)) const IdentifierInfo The comment kind symbol. | ||||
Str (message directive) const std::string The comment message directive. | Str (message directive) const std::string The comment message directive. | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaComment | - Callback: PragmaComment | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
Kind: library | Kind: library | ||||
Str: kernel32.lib | Str: kernel32.lib | ||||
`PragmaDetectMismatch <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ab11158c9149fb8ad8af1903f4a6cd65d>`_ Callback | `PragmaDetectMismatch <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ab11158c9149fb8ad8af1903f4a6cd65d>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaDetectMismatch is called when a #pragma detect_mismatch directive is read. | PragmaDetectMismatch is called when a #pragma detect_mismatch directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
Name "(name)" const std::string The name. | Name "(name)" const std::string The name. | ||||
Value (string) const std::string The value. | Value (string) const std::string The value. | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaDetectMismatch | - Callback: PragmaDetectMismatch | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
Name: name | Name: name | ||||
Value: value | Value: value | ||||
`PragmaDebug <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a57cdccb6dcc07e926513ac3d5b121466>`_ Callback | `PragmaDebug <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a57cdccb6dcc07e926513ac3d5b121466>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaDebug is called when a #pragma clang __debug directive is read. | PragmaDebug is called when a #pragma clang __debug directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ================================ | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ================================ | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
DebugType (string) StringRef Indicates type of debug message. | DebugType (string) StringRef Indicates type of debug message. | ||||
============== ================================================== ============================== ================================ | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaDebug | - Callback: PragmaDebug | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
DebugType: warning | DebugType: warning | ||||
`PragmaMessage <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#abb42935d9a9fd8e2c4f51cfdc4ea2ae1>`_ Callback | `PragmaMessage <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#abb42935d9a9fd8e2c4f51cfdc4ea2ae1>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaMessage is called when a #pragma message directive is read. | PragmaMessage is called when a #pragma message directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ======================================= | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ======================================= | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
Namespace (name) StringRef The namespace of the message directive. | Namespace (name) StringRef The namespace of the message directive. | ||||
Kind (PMK_Message|PMK_Warning|PMK_Error) PPCallbacks::PragmaMessageKind The type of the message directive. | Kind (PMK_Message|PMK_Warning|PMK_Error) PPCallbacks::PragmaMessageKind The type of the message directive. | ||||
Str (string) StringRef The text of the message directive. | Str (string) StringRef The text of the message directive. | ||||
============== ================================================== ============================== ======================================= | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaMessage | - Callback: PragmaMessage | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
Namespace: "GCC" | Namespace: "GCC" | ||||
Kind: PMK_Message | Kind: PMK_Message | ||||
Str: The message text. | Str: The message text. | ||||
`PragmaDiagnosticPush <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a0f3ff19762baa38fe6c5c58022d32979>`_ Callback | `PragmaDiagnosticPush <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a0f3ff19762baa38fe6c5c58022d32979>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaDiagnosticPush is called when a #pragma gcc diagnostic push directive is read. | PragmaDiagnosticPush is called when a #pragma gcc diagnostic push directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
Namespace (name) StringRef Namespace name. | Namespace (name) StringRef Namespace name. | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaDiagnosticPush | - Callback: PragmaDiagnosticPush | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
Namespace: "GCC" | Namespace: "GCC" | ||||
`PragmaDiagnosticPop <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ac94d789873122221fba8d76f6c5ea45e>`_ Callback | `PragmaDiagnosticPop <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ac94d789873122221fba8d76f6c5ea45e>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaDiagnosticPop is called when a #pragma gcc diagnostic pop directive is read. | PragmaDiagnosticPop is called when a #pragma gcc diagnostic pop directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
Namespace (name) StringRef Namespace name. | Namespace (name) StringRef Namespace name. | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaDiagnosticPop | - Callback: PragmaDiagnosticPop | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
Namespace: "GCC" | Namespace: "GCC" | ||||
`PragmaDiagnostic <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#afe7938f38a83cb7b4b25a13edfdd7bdd>`_ Callback | `PragmaDiagnostic <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#afe7938f38a83cb7b4b25a13edfdd7bdd>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaDiagnostic is called when a #pragma gcc diagnostic directive is read. | PragmaDiagnostic is called when a #pragma gcc diagnostic directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
Namespace (name) StringRef Namespace name. | Namespace (name) StringRef Namespace name. | ||||
mapping (0|MAP_IGNORE|MAP_WARNING|MAP_ERROR|MAP_FATAL) diag::Severity Mapping type. | mapping (0|MAP_IGNORE|MAP_WARNING|MAP_ERROR|MAP_FATAL) diag::Severity Mapping type. | ||||
Str (string) StringRef Warning/error name. | Str (string) StringRef Warning/error name. | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaDiagnostic | - Callback: PragmaDiagnostic | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
Namespace: "GCC" | Namespace: "GCC" | ||||
mapping: MAP_WARNING | mapping: MAP_WARNING | ||||
Str: WarningName | Str: WarningName | ||||
`PragmaOpenCLExtension <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a92a20a21fadbab4e2c788f4e27fe07e7>`_ Callback | `PragmaOpenCLExtension <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a92a20a21fadbab4e2c788f4e27fe07e7>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaOpenCLExtension is called when OpenCL extension is either disabled or enabled with a pragma. | PragmaOpenCLExtension is called when OpenCL extension is either disabled or enabled with a pragma. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ========================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ========================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
NameLoc "(file):(line):(col)" SourceLocation The location of the name. | NameLoc "(file):(line):(col)" SourceLocation The location of the name. | ||||
Name (name) const IdentifierInfo Name symbol. | Name (name) const IdentifierInfo Name symbol. | ||||
StateLoc "(file):(line):(col)" SourceLocation The location of the state. | StateLoc "(file):(line):(col)" SourceLocation The location of the state. | ||||
State (1|0) unsigned Enabled/disabled state. | State (1|0) unsigned Enabled/disabled state. | ||||
============== ================================================== ============================== ========================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaOpenCLExtension | - Callback: PragmaOpenCLExtension | ||||
NameLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:10" | NameLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:10" | ||||
Name: Name | Name: Name | ||||
StateLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:18" | StateLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:18" | ||||
State: 1 | State: 1 | ||||
`PragmaWarning <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#aa17169d25fa1cf0a6992fc944d1d8730>`_ Callback | `PragmaWarning <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#aa17169d25fa1cf0a6992fc944d1d8730>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaWarning is called when a #pragma warning directive is read. | PragmaWarning is called when a #pragma warning directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
WarningSpec (string) StringRef The warning specifier. | WarningSpec (string) StringRef The warning specifier. | ||||
Ids [(number)[, ...]] ArrayRef<int> The warning numbers. | Ids [(number)[, ...]] ArrayRef<int> The warning numbers. | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaWarning | - Callback: PragmaWarning | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
WarningSpec: disable | WarningSpec: disable | ||||
Ids: 1,2,3 | Ids: 1,2,3 | ||||
`PragmaWarningPush <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ae5626ef70502687a859f323a809ed0b6>`_ Callback | `PragmaWarningPush <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ae5626ef70502687a859f323a809ed0b6>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaWarningPush is called when a #pragma warning(push) directive is read. | PragmaWarningPush is called when a #pragma warning(push) directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
Level (number) int Warning level. | Level (number) int Warning level. | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaWarningPush | - Callback: PragmaWarningPush | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
Level: 1 | Level: 1 | ||||
`PragmaWarningPop <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ac98d502af8811b8a6e7342d7cd2b3b95>`_ Callback | `PragmaWarningPop <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ac98d502af8811b8a6e7342d7cd2b3b95>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
PragmaWarningPop is called when a #pragma warning(pop) directive is read. | PragmaWarningPop is called when a #pragma warning(pop) directive is read. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Introducer {Loc: "(file):(line):(col)", Kind: (PIK_HashPragma|PIK__Pragma|PIK___pragma)} PragmaIntroducer The location and kind of the pragma introducer. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
============== ================================================== ============================== ============================== | ============== ============================================================================= ============================== =============================================== | ||||
Example::: | Example::: | ||||
- Callback: PragmaWarningPop | - Callback: PragmaWarningPop | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-pragma.cpp:3:1" | ||||
`MacroExpands <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a9bc725209d3a071ea649144ab996d515>`_ Callback | `MacroExpands <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a9bc725209d3a071ea649144ab996d515>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
Show All 24 Lines | |||||
MacroDefined is called when a macro definition is seen. | MacroDefined is called when a macro definition is seen. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
MacroNameTok (token) const Token The macro name token. | MacroNameTok (token) const Token The macro name token. | ||||
MacroDirective (MD_Define|MD_Undefine|MD_Visibility) const MacroDirective The kind of macro directive from the MacroDirective structure. | MacroDirective (MD_Define|MD_Undefine|MD_Visibility) const MacroDirective The kind of macro directive from the MacroDirective structure. | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
Example::: | Example::: | ||||
- Callback: MacroDefined | - Callback: MacroDefined | ||||
MacroNameTok: X_IMPL | MacroNameTok: X_IMPL | ||||
MacroDirective: MD_Define | MacroDirective: MD_Define | ||||
`MacroUndefined <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#acb80fc6171a839db8e290945bf2c9d7a>`_ Callback | `MacroUndefined <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#acb80fc6171a839db8e290945bf2c9d7a>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
MacroUndefined is called when a macro #undef is seen. | MacroUndefined is called when a macro #undef is seen. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
MacroNameTok (token) const Token The macro name token. | MacroNameTok (token) const Token The macro name token. | ||||
MacroDirective (MD_Define|MD_Undefine|MD_Visibility) const MacroDirective The kind of macro directive from the MacroDirective structure. | MacroDirective (MD_Define|MD_Undefine|MD_Visibility) const MacroDirective The kind of macro directive from the MacroDirective structure. | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
Example::: | Example::: | ||||
- Callback: MacroUndefined | - Callback: MacroUndefined | ||||
MacroNameTok: X_IMPL | MacroNameTok: X_IMPL | ||||
▲ Show 20 Lines • Show All 41 Lines • ▼ Show 20 Lines | |||||
`If <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a645edcb0d6becbc6f256f02fd1287778>`_ Callback | `If <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a645edcb0d6becbc6f256f02fd1287778>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
If is called when an #if is seen. | If is called when an #if is seen. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
ConditionRange ["(file):(line):(col)", "(file):(line):(col)"] SourceRange The source range for the condition. | ConditionRange ["(file):(line):(col)", "(file):(line):(col)"] SourceRange The source range for the condition. | ||||
ConditionValue (true|false) bool The condition value. | ConditionValue (true|false) bool The condition value. | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
Example::: | Example::: | ||||
- Callback: If | - Callback: If | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:2" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:2" | ||||
ConditionRange: ["D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:4", "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:9:1"] | ConditionRange: ["D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:4", "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:9:1"] | ||||
ConditionValue: false | ConditionValue: false | ||||
`Elif <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a180c9e106a28d60a6112e16b1bb8302a>`_ Callback | `Elif <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a180c9e106a28d60a6112e16b1bb8302a>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
Elif is called when an #elif is seen. | Elif is called when an #elif is seen. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
ConditionRange ["(file):(line):(col)", "(file):(line):(col)"] SourceRange The source range for the condition. | ConditionRange ["(file):(line):(col)", "(file):(line):(col)"] SourceRange The source range for the condition. | ||||
ConditionValue (true|false) bool The condition value. | ConditionValue (true|false) bool The condition value. | ||||
IfLoc "(file):(line):(col)" SourceLocation The location of the directive. | IfLoc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
Example::: | Example::: | ||||
- Callback: Elif | - Callback: Elif | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:10:2" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:10:2" | ||||
ConditionRange: ["D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:10:4", "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:11:1"] | ConditionRange: ["D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:10:4", "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:11:1"] | ||||
ConditionValue: false | ConditionValue: false | ||||
IfLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:2" | IfLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:2" | ||||
`Ifdef <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a0ce79575dda307784fd51a6dd4eec33d>`_ Callback | `Ifdef <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a0ce79575dda307784fd51a6dd4eec33d>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
Ifdef is called when an #ifdef is seen. | Ifdef is called when an #ifdef is seen. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
MacroNameTok (token) const Token The macro name token. | MacroNameTok (token) const Token The macro name token. | ||||
MacroDirective (MD_Define|MD_Undefine|MD_Visibility) const MacroDirective The kind of macro directive from the MacroDirective structure. | MacroDirective (MD_Define|MD_Undefine|MD_Visibility) const MacroDirective The kind of macro directive from the MacroDirective structure. | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
Example::: | Example::: | ||||
- Callback: Ifdef | - Callback: Ifdef | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-conditional.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-conditional.cpp:3:1" | ||||
MacroNameTok: MACRO | MacroNameTok: MACRO | ||||
MacroDirective: MD_Define | MacroDirective: MD_Define | ||||
`Ifndef <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a767af69f1cdcc4cd880fa2ebf77ad3ad>`_ Callback | `Ifndef <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#a767af69f1cdcc4cd880fa2ebf77ad3ad>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
Ifndef is called when an #ifndef is seen. | Ifndef is called when an #ifndef is seen. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the directive. | Loc "(file):(line):(col)" SourceLocation The location of the directive. | ||||
MacroNameTok (token) const Token The macro name token. | MacroNameTok (token) const Token The macro name token. | ||||
MacroDirective (MD_Define|MD_Undefine|MD_Visibility) const MacroDirective The kind of macro directive from the MacroDirective structure. | MacroDirective (MD_Define|MD_Undefine|MD_Visibility) const MacroDirective The kind of macro directive from the MacroDirective structure. | ||||
============== ================================================== ============================== ============================================================== | ============== ================================================== ============================== ============================================================== | ||||
Example::: | Example::: | ||||
- Callback: Ifndef | - Callback: Ifndef | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-conditional.cpp:3:1" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-conditional.cpp:3:1" | ||||
MacroNameTok: MACRO | MacroNameTok: MACRO | ||||
MacroDirective: MD_Define | MacroDirective: MD_Define | ||||
`Else <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ad57f91b6d9c3cbcca326a2bfb49e0314>`_ Callback | `Else <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#ad57f91b6d9c3cbcca326a2bfb49e0314>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
Else is called when an #else is seen. | Else is called when an #else is seen. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the else directive. | Loc "(file):(line):(col)" SourceLocation The location of the else directive. | ||||
IfLoc "(file):(line):(col)" SourceLocation The location of the if directive. | IfLoc "(file):(line):(col)" SourceLocation The location of the if directive. | ||||
============== ================================================== ============================== =================================== | ============== ================================================== ============================== ================================================== | ||||
Example::: | Example::: | ||||
- Callback: Else | - Callback: Else | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:10:2" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:10:2" | ||||
IfLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:2" | IfLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:2" | ||||
`Endif <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#afc62ca1401125f516d58b1629a2093ce>`_ Callback | `Endif <https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html#afc62ca1401125f516d58b1629a2093ce>`_ Callback | ||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||||
Endif is called when an #endif is seen. | Endif is called when an #endif is seen. | ||||
Argument descriptions: | Argument descriptions: | ||||
============== ================================================== ============================== ==================================== | ============== ================================================== ============================== ================================================== | ||||
Argument Name Argument Value Syntax Clang C++ Type Description | Argument Name Argument Value Syntax Clang C++ Type Description | ||||
============== ================================================== ============================== ==================================== | ============== ================================================== ============================== ================================================== | ||||
HashLoc "(file):(line):(col)" SourceLocation The location of the '#' that starts the directive. | |||||
Loc "(file):(line):(col)" SourceLocation The location of the endif directive. | Loc "(file):(line):(col)" SourceLocation The location of the endif directive. | ||||
IfLoc "(file):(line):(col)" SourceLocation The location of the if directive. | IfLoc "(file):(line):(col)" SourceLocation The location of the if directive. | ||||
============== ================================================== ============================== ==================================== | ============== ================================================== ============================== ================================================== | ||||
Example::: | Example::: | ||||
- Callback: Endif | - Callback: Endif | ||||
Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:10:2" | Loc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:10:2" | ||||
IfLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:2" | IfLoc: "D:/Clang/llvm/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp:8:2" | ||||
Building pp-trace | Building pp-trace | ||||
Show All 19 Lines |