### Function

# GLib free_sized

since: 2.76

#### Declaration

    void
    g_free_sized (
      gpointer mem,
      size_t size
    )

#### Description

Frees the memory pointed to by `mem`, assuming it is has the given `size`.

If `mem` is `NULL` this is a no-op (and `size` is ignored).

It is an error if `size` doesn’t match the size passed when `mem` was allocated. `size` is passed to this function to allow optimizations in the allocator. If you don’t know the allocation size, use `g_free()` instead.

In case a GCC compatible compiler is used, this function may be used automatically via `g_free()` if the allocated size is known at compile time, since GLib 2.78.

Available since: 2.76

#### Parameters

`mem`

  Type: `gpointer`

  The memory to free.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`size`

  Type: `size_t`

  Size of `mem`, in bytes.