#### Description:

This function frees memory that has previouly been dynamically allocated using one of the AST memory function. It assumes that the supplied pointer is a pointer to an array of pointers. Each of these pointers is first freed, and then the supplied pointer is freed.

Note, this routine should not be used with arrays allocated by astGrow since astGrow over-allocates and so there may be non-initialised pointers at the end of the array.

#### Synopsis

void ∗astFreeDouble( void ∗ptr )

#### Parameters:

##### ptr

Pointer to previously allocated memory. An error will result if the memory has not previously been allocated by another function in this module. However, a NULL pointer value is accepted (without error) as indicating that no memory has yet been allocated, so that no action is required.

#### Returned Value

##### astFreeDouble()

Always returns a NULL pointer.
Copyright (C) 2021 East Asian Observatory