gdb: handle INTERNALVAR_FUNCTION in clear_internalvar

While checking the list of leaks reported by ASan, I found that
clear_internalvar doesn't free the internal_function object owned by the
internalvar when the internalvar is of kind INTERNALVAR_FUNCTION, fix
that.

Change-Id: I78f53b83b97bae39370a7b5ba5e1cec70626d66a
Reviewed-By: Guinevere Larsen <guinevere@redhat.com>
diff --git a/gdb/value.c b/gdb/value.c
index 8b8b5c8..e36feaf 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -2322,6 +2322,10 @@ clear_internalvar (struct internalvar *var)
       xfree (var->u.string);
       break;
 
+    case INTERNALVAR_FUNCTION:
+      delete var->u.fn.function;
+      break;
+
     default:
       break;
     }