Parent Class with a Virtual Destructor and a Child Class without a Virtual Destructor

Incomplete Base
Structure: Simple
Description

A parent class has a virtual destructor method, but the parent has a child class that does not have a virtual destructor.

Extended Description

This issue can prevent the product from running reliably, since the child might not perform essential destruction operations. If the relevant code is reachable by an attacker, then this reliability problem might introduce a vulnerability, such as a memory leak (CWE-401).

Common Consequences 1
Scope: Other

Impact: Reduce Reliability

References 3
Automated Source Code Reliability Measure (ASCRM)
Object Management Group (OMG)
01-2016
ID: REF-961
C++ Virtual Destructors: How to Avoid Memory Leaks
QuantStart
ID: REF-977
Virtual Destructor
GeeksforGeeks
ID: REF-978
Taxonomy Mapping
  • OMG ASCRM