Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Examine use of new vs. override #173

Open
Starstrider42 opened this issue Jun 6, 2017 · 0 comments
Open

Examine use of new vs. override #173

Starstrider42 opened this issue Jun 6, 2017 · 0 comments
Milestone

Comments

@Starstrider42
Copy link
Contributor

Many TestFlight modules, such as the TestFlightFailure heirarchy, have non-virtual members that can be masked by subclasses. This masking leads to unexpected inconsistencies in how a class behaves in different contexts; in extreme cases, it even leads to unreachable code (e.g., TestFlightFailure_Engine.TestFlightEnabled never got called prior to the changes in #172).

The code base should be re-examined to determine whether redefined class members should mask or override base class members. Changing whether a member is virtual or not may expose previously hidden bugs, particularly when the change enables previously unused code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants