There is a blog post on WalkingRandomly pointing out that numpy doesn’t give a warning when trying to solve a linear system with a singular matrix. Many other systems, such as MATLAB, Octave and R do give a warning. I tried the same matrix in Mathematica and it seems that for the matrix itself it does give a warning, but not for its transpose.
Do you consider this incorrect behaviour?
Here are the examples:
mat = Partition[Range[9], 3]
LinearSolve[N[mat], {15, 15, 15}]
LinearSolve::luc: "Result for LinearSolve of badly conditioned matrix {{1.,2.,3.},{4.,5.,6.},{7.,8.,9.}} may contain significant numerical errors. "
{-39., 63., -24.}
LinearSolve[N[mat\[Transpose]], {15, 15, 15}]
{-2.5, -2.66454*10^-15, 2.5} (* no warning *)