EntryPoints-EntriesByVirtualExternalΒΆ
Consider virtual functions from outside of the project as called entry points
Required inputs: IR
This rule identifies additional entry points being virtual functions defined outside of the project.
For the context of this rule, "outside of the project" means being represented by an
absolute file path, whereas everything "inside the project" should be represented by a
relative path. This is established by the fact that
/Project/directory (or CAFECC_BASEPATH
during compilation outside of axivion_ci) ensure project paths to be
relative while all other paths are absolute.
Assume library code like from a library header:
class LibraryBase
{
virtual void handle(void);
};
And application code as follows:
class MyClass : public LibraryBase
{
void handle(void) override { /* my implementation */ }
};
If LibraryBase::handle() is only ever called from library code that has
not been analyzed by the Axivion compiler, then also MyClass::handle()
will be assumed to be dead - even though it is not - unless you enable this rule.Possible Messages
This rule has no predefined messages.
Options
The following places define options that affect this rule: Analysis-GlobalOptions
This rule has no individual options.