PySpice
PySpice copied to clipboard
_parameters deleted in wrong order
https://github.com/PySpice-org/PySpice/blob/1fb97dc21abcf04cfd78802671322eef5c0de00b/PySpice/Spice/Parser.py#L501 This list is not deliberately ordered and if the indexes are not stored in to_delete[] in reverse order, the del operation on line 502 will have unexpected results.
The simplest fix is to insert "to_delete.sort(reverse=True)" between the two for loops as follows:
for parameter in element_class.positional_parameters.values():
if parameter.key_parameter:
i = parameter.position
self._dict_parameters[parameter.attribute_name] = self._parameters[i]
to_delete.append(i)
to_delete.sort(reverse=True)
for i in to_delete:
del self._parameters[i]