mirror of
https://github.com/RGBCube/serenity
synced 2026-01-13 00:50:59 +00:00
This flag warns on classes which have `virtual` functions but do not have a `virtual` destructor. This patch adds both the flag and missing destructors. The access level of the destructors was determined by a two rules of thumb: 1. A destructor should have a similar or lower access level to that of a constructor. 2. Having a `private` destructor implicitly deletes the default constructor, which is probably undesirable for "interface" types (classes with only virtual functions and no data). In short, most of the added destructors are `protected`, unless the compiler complained about access. |
||
|---|---|---|
| .. | ||
| Tests | ||
| AST.cpp | ||
| AST.h | ||
| Builtin.cpp | ||
| CMakeLists.txt | ||
| Execution.h | ||
| Formatter.cpp | ||
| Formatter.h | ||
| Forward.h | ||
| ImmediateFunctions.cpp | ||
| Job.cpp | ||
| Job.h | ||
| main.cpp | ||
| NodeVisitor.cpp | ||
| NodeVisitor.h | ||
| Parser.cpp | ||
| Parser.h | ||
| Shell.cpp | ||
| Shell.h | ||
| SyntaxHighlighter.cpp | ||
| SyntaxHighlighter.h | ||