Remove unnecessary NoInlining, #931 #1099
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Remove unnecessary use of
[MethodImpl(MethodImplOptions.NoInlining)]
Partial #931
Description
I need to finish reviewing the methods mentioned in calls to
StackTraceHelper.DoesStackTraceContainMethod(string methodName)
(the overload without the class name parameter) to make sure there aren't any false positives there, but I've at least validated that those existing usages of NoInlining seem like they might plausibly match their use in the tests.This PR removes NoInlining from interface and abstract methods, where it has no effect because the attribute is not inherited. It also removes it from methods with empty bodies, because an empty body doesn't call anything, and thus those checks in the tests would never be true anyways. Finally, it removes it in a few other places that were not asserted in tests.
As a TODO, I left the SystemConsole attributes there, even though those are suspect. We had discussed possibly being able to remove that class anyways, but I'll defer that for now.