Skip to main content

cpp_displaced_preprocessor_terminator

Function cpp_displaced_preprocessor_terminator 

Source
pub fn cpp_displaced_preprocessor_terminator<'tree>(
    conditional: Node<'tree>,
) -> Option<Node<'tree>>
Expand description

The real #endif that tree-sitter consumed inside an error subtree.

A preprocessor directive inside a malformed array bound can cause later declarations to remain children of the conditional. The non-missing token still gives the exact structured boundary. Ignore nested conditionals and select the last error-owned token. Tree-sitter can pair a later outer #endif with this conditional, so the direct terminator is not necessarily missing.