AutosarC++17_03-A16.2.3

All used include directives shall be explicitly stated

Required inputs: IR

Possible Messages

Key

Text

Severity

Disabled

missing_include

Explicit include directive for symbol ‘{}’ is missing.

None

False

missing_include_macro

Explicit include directive for macro ‘{}’ is missing.

None

False

Options

allow_inclusion_through_own_header

allow_inclusion_through_own_header : bool = False

Allows the indirect inclusion through the header belonging to a compilation unit. Headers are considered corresponding to an implementation file, if they share the same basename. That is, an indirect inclusion of a symbol in file.cpp would be allowed via file.h. Further indirections are still forbidden.
 

internal_header_patterns

internal_header_patterns : set[str] = set()

Filename patterns for headers to be considered as internal, i.e., they should not be included directly but indirectly though another header.
 

internal_symbol_patterns

internal_symbol_patterns : set[str] = set()

Patterns for symbols to be considered as internal, i.e., they should not be included directly but indirectly though another header.