DESCRIPTION

This routine implements the creation/over-writing semantics used in the KJB
library in the case of integer matrices. If *target_mpp is NULL, then this
routine creates the int_matrix. If it is not null, and it is the right size,
then this routine does nothing. If it is the wrong size, then it is resized.
In order to be memory efficient, we free before resizing. If the resizing
fails, then the original contents of the *target_mpp will be lost.
However, target_mpp->elements will be set to NULL, so *target_mpp can
be safely sent to free_matrix().
The sizes (num_rows and num_cols) must both be nonnegative.
Conventionally, num_rows and num_cols are both positive;
however, it is also acceptable to have num_rows and num_cols both zero.
Anything else (such as a mix of positive and zero sizes) is regarded as a
bug in the calling program -- set_bug(3) is called and (if it returns)
ERROR is returned.

RELATED

Int_matrix

DISCLAIMER

This software is not adequatedly tested. It is recomended that
results are checked independantly where appropriate.