Typically, these sorts of messages appear when you are outside the expected operation of a strongly nonlinear device, and it's not truly a singular matrix, just singular within the finite precision of real numbers on a computer.
If you take a current source and drive the series combination of a 1e-20 resistor and a 1e+20 resistor, then the simulator will be unable to solve the circuit: the (conductance) matrix will be
1e+20 | -1e+20 |
-1e+20 | (1e+20+1e-20) |
and 1e+20+1e-20 = 1e+20 in double-precision arithmetic, such that the two rows are linearly dependent (row1 = -row2).
If you have a diode with a 0.5 Ohm series resistance, then for certain forward biases the diode conductance gd will be sufficiently large that gd+1/rs = gd (numerically); also, for some reverse biases, gd+1/rs = 1/rs -- though usually the simulator's GMIN prevents this.