It should be like this instead:
Q = zeros(n_const,n_const)
for i = 1:n_const, j = 1:n_const
if i <= n_prev && j <= n_prev
Q[i,j] = Q_prev[i, j]
elseif i <= n_prev
Q[i,j] = Q_aug[i, j-n_prev]
elseif j <= n_prev
Q[i,j] = Q_aug[j, i-n_prev]
else
Q[i,j] = Q_aug_diag[i-n_prev, j-n_prev]
end
end