L2 — + headers¶
Needs the public headers parsed alongside the binary.
35 case(s). ← back to all examples
| Case | Title | Verdict | Category |
|---|---|---|---|
| case32_param_defaults | Parameter Default Value Changes (C++) | 🟠 API_BREAK | API Break |
| case34_access_level | Access Level Changed | 🟠 API_BREAK | API Break |
| case74_detail_base_class_changed | Internal detail:: base class layout change leaks via public API |
🔴 BREAKING | Breaking |
| case75_detail_embedded_by_value | Internal detail:: Struct Embedded by Value |
🔴 BREAKING | Breaking |
| case76_detail_pimpl_vtable_changed | Internal detail:: Polymorphic Base Vtable Change |
🔴 BREAKING | Breaking |
| case79_missing_template_instantiation | Missing Template Instantiation in Shipped Binary | 🔴 BREAKING | Breaking |
| case81_serialization_tag_reassigned | Serialization Tag ID Reassigned | 🔴 BREAKING | Breaking |
| case85_internal_template_signature_changed | Internal Template Signature Changed | 🔴 BREAKING | Breaking |
| case87_default_template_arg_changed | Default Template Argument Changed | 🔴 BREAKING | Breaking |
| case88_cpo_kind_changed | CPO kind changed (BREAKING) | 🔴 BREAKING | Breaking |
| case89_inline_accessor_renamed_pimpl_member | Inline Accessor References Renamed Pimpl Member | 🔴 BREAKING | Breaking |
| case96_hidden_friend_removed | Hidden Friend Operator Removed | 🟠 API_BREAK | API Break |
| case106_ctor_became_explicit | Conversion Operator Became explicit |
🟠 API_BREAK | API Break |
| case118_internal_struct_field_added_scoped | Internal Struct Gains a Field (Non-Public, Scoped) | ✅ NO_CHANGE | No Change |
| case119_internal_struct_field_removed_scoped | Internal Struct Loses a Field (Non-Public, Scoped) | ✅ NO_CHANGE | No Change |
| case120_internal_struct_reordered_scoped | Internal Struct Fields Reordered (Non-Public, Scoped) | ✅ NO_CHANGE | No Change |
| case123_default_argument_removed | Default Argument Removed | 🟠 API_BREAK | API Break |
| case124_header_constant_value_changed | Header Constant Value Changed | 🟠 API_BREAK | API Break |
| case125_class_became_final | Class Became final |
🟠 API_BREAK | API Break |
| case143_audit_accidental_export | Accidental Export (Single-Release Audit) | 🟢 COMPATIBLE | Quality (Compatible) |
| case144_audit_private_header_leak | Private Header Leak (Single-Release Audit) | 🟢 COMPATIBLE | Quality (Compatible) |
| case146_audit_rtti_for_internal | RTTI Exported for an Internal Type (Single-Release Audit) | 🟢 COMPATIBLE | Quality (Compatible) |
| case147_scan_depth_ladder | Depth Ladder — the Same Input Answered at Increasing Depth | 🟢 COMPATIBLE | Quality (Compatible) |
| case150_xcheck_export_public_pair | Bidirectional Export ↔ Declaration Pair | 🟢 COMPATIBLE | Quality (Compatible) |
| case151_xcheck_provider_matrix | Provider-Agreement Matrix (Corroboration Grows With Evidence) | 🟢 COMPATIBLE | Quality (Compatible) |
| case163_python_kwarg_renamed | Python Keyword Argument Renamed (Stub-Only API Break) | 🟠 API_BREAK | API Break |
| case166_ref_qualifier_added | Method Ref-Qualifier Added (str() → str() &) |
🔴 BREAKING | Breaking |
| case168_virtual_method_devirtualized | Virtual Method Devirtualized (flush() leaves the vtable) |
🔴 BREAKING | Breaking |
| case184_internal_enum_churn_scoped | Internal Enum Churn, Scoped Out by Private-Header Origin | ✅ NO_CHANGE | No Change |
| case186_c_api_pointee_const_abi_neutral | C API Pointee const-Qualification Is ABI-Neutral | ✅ NO_CHANGE | No Change |
| case202_public_header_declaration_order_changed | Public Header Declaration Order Changed | ✅ NO_CHANGE | No Change |
| case205_public_function_marked_deprecated | Public Function Marked Deprecated | 🟢 COMPATIBLE | Quality (Compatible) |
| case206_deprecation_documented_without_attribute | Deprecation Documented Without the Attribute | ✅ NO_CHANGE | No Change |
| case207_pointer_parameter_gained_restrict | Pointer Parameter Gained restrict |
🟢 COMPATIBLE | Quality (Compatible) |
| case208_restrict_added_to_definition_only | restrict Added to the Definition Only |
✅ NO_CHANGE | No Change |