== Why is this an issue?

The ``++SafeHandle++`` class provides a simpler and safer way to manage the life cycle of objects which contains un-managed pointers (``++IntPtr++``). When converting to ``++SafeHandle++`` all calls to ``++GC.KeepAlive++`` should be removed because they become unnecessary and could confuse maintainers if left in the code.


This rule raises an issue when a class is using ``++SafeHandle++`` and still contains calls to ``++GC.KeepAlive++``.


== Resources

https://msdn.microsoft.com/en-us/library/system.runtime.interopservices.safehandle(v=vs.110).aspx[SafeHandle Reference]

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

=== Message

Remove this call to 'GC.KeepAlive'.


=== Highlighting

Call to GC.KeepAlive


endif::env-github,rspecator-view[]
