Attempt workaround for memory leak in gcc-compiled version

This change is theorizing that the pointer-to-member-function
in the pair is triggering a bug with how the stack destructor
information is managed. By taking a pointer to that function
pointer instead of the function itself, maybe things will work
better.