Add AssertionError.
This commit is contained in:
parent
eae16445d5
commit
b81e1fdef7
@ -45,10 +45,7 @@ static void emit_pass1_load_id(emit_t *emit, qstr qstr) {
|
|||||||
bool added;
|
bool added;
|
||||||
id_info_t *id = scope_find_or_add_id(emit->scope, qstr, &added);
|
id_info_t *id = scope_find_or_add_id(emit->scope, qstr, &added);
|
||||||
if (added) {
|
if (added) {
|
||||||
if (qstr == MP_QSTR_AssertionError) {
|
if (strcmp(qstr_str(qstr), "super") == 0 && emit->scope->kind == SCOPE_FUNCTION) {
|
||||||
// TODO how much of a hack is this?
|
|
||||||
id->kind = ID_INFO_KIND_GLOBAL_EXPLICIT;
|
|
||||||
} else if (strcmp(qstr_str(qstr), "super") == 0 && emit->scope->kind == SCOPE_FUNCTION) {
|
|
||||||
// special case, super is a global, and also counts as use of __class__
|
// special case, super is a global, and also counts as use of __class__
|
||||||
id->kind = ID_INFO_KIND_GLOBAL_EXPLICIT;
|
id->kind = ID_INFO_KIND_GLOBAL_EXPLICIT;
|
||||||
id_info_t *id2 = scope_find_local_in_parent(emit->scope, emit->qstr___class__);
|
id_info_t *id2 = scope_find_local_in_parent(emit->scope, emit->qstr___class__);
|
||||||
|
@ -90,6 +90,7 @@ void rt_init(void) {
|
|||||||
mp_map_add_qstr(&map_builtins, MP_QSTR_SyntaxError, mp_obj_new_exception(MP_QSTR_SyntaxError));
|
mp_map_add_qstr(&map_builtins, MP_QSTR_SyntaxError, mp_obj_new_exception(MP_QSTR_SyntaxError));
|
||||||
mp_map_add_qstr(&map_builtins, MP_QSTR_ValueError, mp_obj_new_exception(MP_QSTR_ValueError));
|
mp_map_add_qstr(&map_builtins, MP_QSTR_ValueError, mp_obj_new_exception(MP_QSTR_ValueError));
|
||||||
mp_map_add_qstr(&map_builtins, MP_QSTR_OSError, mp_obj_new_exception(MP_QSTR_OSError));
|
mp_map_add_qstr(&map_builtins, MP_QSTR_OSError, mp_obj_new_exception(MP_QSTR_OSError));
|
||||||
|
mp_map_add_qstr(&map_builtins, MP_QSTR_AssertionError, mp_obj_new_exception(MP_QSTR_AssertionError));
|
||||||
|
|
||||||
// built-in objects
|
// built-in objects
|
||||||
mp_map_add_qstr(&map_builtins, MP_QSTR_Ellipsis, mp_const_ellipsis);
|
mp_map_add_qstr(&map_builtins, MP_QSTR_Ellipsis, mp_const_ellipsis);
|
||||||
|
Loading…
Reference in New Issue
Block a user