A.S.: The question is about type of error, not about the phenomenon
In ES5, there are 6 different kinds of native errors:
This exception is not currently used within this specification. This object remains for compatibility with previous editions of this specification.
Indicates a numeric value has exceeded the allowable range.
Indicate that an invalid reference value has been detected.
Indicates that a parsing error has occurred.
Indicates the actual type of an operand is different than the expected type.
Indicates that one of the global URI handling functions was used in a way that is incompatible with its definition.
So the problem is that the writability of the assigned reference (left operand in the assignment expression) is not the expected one. Then, among the 6 error kinds above, the most appropriate seems TypeError, even if writability is not exactly a type.