function setDiagonal( M, N, breal, bimag, A, strideA1, strideA2, offsetA ) {
	var sa;
	var ia;
	var i;

	sa = strideA1 + strideA2;
	ia = offsetA;
	for ( i = 0; i < min( M, N ); i++ ) {
		A[ ia ] = breal;
		A[ ia+1 ] = bimag;
		ia += sa;
	}
	return A;
}
Sets the diagonal of a single-precision complex floating-point matrix `A` to a specified value.

@private
@param {NonNegativeInteger} M - number of rows in matrix `A`
@param {NonNegativeInteger} N - number of columns in matrix `A`
@param {number} breal - real component of the value to assign to diagonal elements
@param {number} bimag - imaginary component of the value to assign to diagonal elements
@param {Float32Array} A - input matrix view
@param {integer} strideA1 - stride of the first dimension of `A`
@param {integer} strideA2 - stride of the second dimension of `A`
@param {NonNegativeInteger} offsetA - starting index for `A`
@returns {Float32Array} `A`

@example
var Float32Array = require( '@stdlib/array/float32' );

var A = new Float32Array( [ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 ] );

setDiagonal( 2, 3, 1.0, 2.0, A, 6, 2, 0 );
// A => <Float32Array>[ 1.0, 2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 0.0, 0.0 ]

@example
var Float32Array = require( '@stdlib/array/float32' );

var A = new Float32Array( [ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 ] );

setDiagonal( 2, 2, 1.0, 2.0, A, 4, 2, 0 );
// A => <Float32Array>[ 1.0, 2.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0 ]

@example
var Float32Array = require( '@stdlib/array/float32' );

var A = new Float32Array( [ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 ] );

setDiagonal( 3, 2, 1.0, 2.0, A, 4, 2, 0 );
// A => <Float32Array>[ 1.0, 2.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 0.0, 0.0, 0.0, 0.0 ]