Good call, iMalc. Completely missed that.

SevenThunders got it here, however . . .
Code:
dynmatrix &operator=(const dynmatrix &rhs)
{
/* assignment operator checks for empty left hand side and 
   generates new matrix if necessary,  otherwise copies */
}
Looks like [s]he just missed that one.

No need to blame your compiler, it's usually your fault . . . (/me knows from experience, including a week-long hunt to reproduce a compiler "bug" that turned out to be my own cursed fault.)