--- /dev/null
+Fix a bug in the JIT optimizer where class attribute loads were not invalidated after type mutation.
}
else {
sym_set_const(owner, type);
+ if ((((PyTypeObject *)type)->tp_flags & Py_TPFLAGS_IMMUTABLETYPE) == 0) {
+ PyType_Watch(TYPE_WATCHER_ID, type);
+ _Py_BloomFilter_Add(dependencies, type);
+ }
}
}
}
}
else {
sym_set_const(owner, type);
+ if ((((PyTypeObject *)type)->tp_flags & Py_TPFLAGS_IMMUTABLETYPE) == 0) {
+ PyType_Watch(TYPE_WATCHER_ID, type);
+ _Py_BloomFilter_Add(dependencies, type);
+ }
}
}
break;