function iladlc( order, M, N, A, LDA ) {
	var sa1;
	var sa2;
	var s;
	if ( !isLayout( order ) ) {
		throw new TypeError( format( 'invalid argument. First argument must be a valid order. Value: `%s`.', order ) );
	}
	if ( isRowMajor( order ) ) {
		s = N;
	} else {
		s = M;
	}
	if ( LDA < max( 1, s ) ) {
		throw new RangeError( format( 'invalid argument. Fifth argument must be greater than or equal to max(1,%d). Value: `%d`.', s, LDA ) );
	}
	if ( isColumnMajor( order ) ) {
		sa1 = 1;
		sa2 = LDA;
	} else { // order === 'row-major'
		sa1 = LDA;
		sa2 = 1;
	}
	return base( M, N, A, sa1, sa2, 0 );
}
Returns the index of the last non-zero column in a matrix `A`.

## Notes

-   If provided an empty matrix or a matrix containing only zeros, the function returns `-1` (i.e., an invalid index).

@param {string} order - storage layout
@param {PositiveInteger} M - number of rows in `A`
@param {PositiveInteger} N - number of columns in `A`
@param {Float64Array} A - input matrix
@param {integer} LDA - stride of the first dimension of `A` (a.k.a., leading dimension of the matrix `A`)
@throws {TypeError} first argument must be a valid order
@throws {RangeError} fifth argument must be greater than or equal to max(1,N)
@returns {integer} index of the last non-zero column

@example
var Float64array = require( '@stdlib/array/float64' );

var A = new Float64array( [ 1.0, 2.0, 0.0, 3.0, 4.0, 0.0 ] ); // => [ [ 1.0, 2.0, 0.0 ], [ 3.0, 4.0, 0.0 ] ]

var out = iladlc( 'row-major', 2, 3, A, 3 );
// returns 1