I was looking at the various combined factor/solve codes and quick return cases. In all cases except for DGTSV, the codes have
the following behavior.
1. Call factor code which will quick return if N=0, otherwise factor the matrix and return INFO and a factorization (which is complete assuming INFO=0).
2. If INFO = 0, call the solve code which will quick return if N=0 or NRHS=0
However, DGTSV has a different behavior arising from the lack of a pivot vector being present in the calling sequence.
Instead it does the following:
1. If N=0, return.
2. Factor and do the forward solve at the same time. This works even when NRHS=0.
3. Back solve - here there is a bug in the implementation because the code would attempt to update B(N,J) for J=1 at line 305.
However, given that the code cannot return a complete factorization due to the lack of the pivot vector in the calling sequence, should the
quick return condition be (N=0 or NRHS=0)?