vorrei sapere se si può utilizzare la funzione realloc per allocare una porzione di memoria MINORE rispetto a quella di partenza.

per esempio io ho un'area di memoria grande 20 byte.
utilizzo la realloc dicendo che mi occorre uno spazio di 5...
è un procedimento corretto?
i 15 byte rimanenti vengono liberati correttamente?