G1FullGCScope member variable is used only for verification in assert(!GCCause::is_user_requested_gc(gc_cause()) || explicit_gc, "invariant"). However, the assert is unnecessary, or we can gc_cause() to determine whether the explicit_gc is true. Therefore, we can remove the _explicit_gc member and probably the assert.