AutosarC++18_10-A12.1.1¶
Constructors shall explicitly initialize all virtual base classes, all direct non-virtual base classes and all non-static data members
Required inputs: IR
Possible Messages
Key |
Text |
Severity |
Disabled |
|---|---|---|---|
default_ctor_missing_fields |
Compiler-generated constructor leaves some fields uninitialized. |
None |
False |
implicit_field_init |
Field is only implicitly initialized in constructor. |
None |
False |
missing_base_class_init |
Base class is not explicitly initialized in constructor. |
None |
False |
missing_field_init |
Field is not initialized in constructor. |
None |
False |
Options¶
This rule shares the following common options: exclude_in_macros, exclude_messages_in_system_headers, excludes, extend_exclude_to_macro_invocations, includes, justification_checker, languages, post_processing, provider, report_at, severity
The following places define options that affect this rule: Stylechecks, Analysis-GlobalOptions
exclude_aggregates¶
exclude_aggregates : bool = False
include_empty_classes¶
include_empty_classes : bool = True
include_pure_virtual¶
include_pure_virtual : bool = True
init_functions¶
init_functions : set[bauhaus.analysis.config.FunctionName] = {'Init', 'init'}
inspect_directly_called_methods¶
inspect_directly_called_methods : bool = False
only_member_initializer_list¶
only_member_initializer_list : bool = False
report_missing_field_constructors¶
report_missing_field_constructors : bool = True