fix(library/compiler/emit_cpp): stop initialization when error is reported

This commit is contained in:
Leonardo de Moura 2019-03-18 14:53:33 -07:00
parent 9b1c5c09fb
commit 08f3459ea3
95 changed files with 255 additions and 0 deletions

View file

@ -1070,6 +1070,7 @@ static void emit_initialize(std::ostream & out, environment const & env, module_
out << " if (_G_initialized) return w;\n";
out << " _G_initialized = true;\n";
for (module_name const & d : deps) {
out << "if (io_result_is_error(w)) return w;\n";
out << "w = initialize_" << mangle(d, false) << "(w);\n";
}
comp_decls ds = get_llnf_code(env);

View file

@ -950,6 +950,7 @@ static bool _G_initialized = false;
obj* initialize_init_coe(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
l_coe__bool__to__Prop = _init_l_coe__bool__to__Prop();
l_coe__sort__bool = _init_l_coe__sort__bool();

View file

@ -364,7 +364,9 @@ static bool _G_initialized = false;
obj* initialize_init_control_alternative(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_applicative(w);
l_optional___rarg___closed__1 = _init_l_optional___rarg___closed__1();
lean::mark_persistent(l_optional___rarg___closed__1);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_control_applicative(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_functor(w);
return w;
}

View file

@ -1514,9 +1514,13 @@ static bool _G_initialized = false;
obj* initialize_init_control_combinators(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_monad(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_alternative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_coe(w);
l_mjoin___rarg___closed__1 = _init_l_mjoin___rarg___closed__1();
lean::mark_persistent(l_mjoin___rarg___closed__1);

View file

@ -29,16 +29,27 @@ static bool _G_initialized = false;
obj* initialize_init_control_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_applicative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_functor(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_alternative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_monad(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_lift(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_state(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_id(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_except(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_reader(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_option(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_combinators(w);
return w;
}

View file

@ -1575,7 +1575,9 @@ static bool _G_initialized = false;
obj* initialize_init_control_estate(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_state(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_except(w);
l_estate_result_to__string___main___rarg___closed__1 = _init_l_estate_result_to__string___main___rarg___closed__1();
lean::mark_persistent(l_estate_result_to__string___main___rarg___closed__1);

View file

@ -3260,9 +3260,13 @@ static bool _G_initialized = false;
obj* initialize_init_control_except(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_alternative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_lift(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_to__string(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_monad__fail(w);
l_except_to__string___main___rarg___closed__1 = _init_l_except_to__string___main___rarg___closed__1();
lean::mark_persistent(l_except_to__string___main___rarg___closed__1);

View file

@ -104,7 +104,9 @@ static bool _G_initialized = false;
obj* initialize_init_control_functor(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
if (io_result_is_error(w)) return w;
w = initialize_init_function(w);
return w;
}

View file

@ -184,6 +184,7 @@ static bool _G_initialized = false;
obj* initialize_init_control_id(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_lift(w);
l_id_monad = _init_l_id_monad();
lean::mark_persistent(l_id_monad);

View file

@ -234,8 +234,11 @@ static bool _G_initialized = false;
obj* initialize_init_control_lift(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_function(w);
if (io_result_is_error(w)) return w;
w = initialize_init_coe(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_monad(w);
return w;
}

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_control_monad(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_applicative(w);
return w;
}

View file

@ -100,7 +100,9 @@ static bool _G_initialized = false;
obj* initialize_init_control_monad__fail(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_lift(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
l_match__failed___rarg___closed__1 = _init_l_match__failed___rarg___closed__1();
lean::mark_persistent(l_match__failed___rarg___closed__1);

View file

@ -2120,8 +2120,11 @@ static bool _G_initialized = false;
obj* initialize_init_control_option(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_alternative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_lift(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_except(w);
return w;
}

View file

@ -1135,9 +1135,13 @@ static bool _G_initialized = false;
obj* initialize_init_control_reader(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_lift(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_id(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_alternative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_except(w);
return w;
}

View file

@ -1604,9 +1604,13 @@ static bool _G_initialized = false;
obj* initialize_init_control_state(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_alternative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_lift(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_id(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_except(w);
l_state__t_run_x_27___rarg___closed__1 = _init_l_state__t_run_x_27___rarg___closed__1();
lean::mark_persistent(l_state__t_run_x_27___rarg___closed__1);

View file

@ -1433,11 +1433,17 @@ static bool _G_initialized = false;
obj* initialize_init_data_array_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_fin_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_repr(w);
if (io_result_is_error(w)) return w;
w = initialize_init_function(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_to__string(w);
l_array_nil___closed__1 = _init_l_array_nil___closed__1();
lean::mark_persistent(l_array_nil___closed__1);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_array_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_array_basic(w);
return w;
}

View file

@ -28,15 +28,25 @@ static bool _G_initialized = false;
obj* initialize_init_data_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_fin_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_char_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_ordering_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_repr(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_to__string(w);
return w;
}

View file

@ -632,6 +632,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_char_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
l_char_has__lt = _init_l_char_has__lt();
lean::mark_persistent(l_char_has__lt);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_char_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_char_basic(w);
return w;
}

View file

@ -32,19 +32,33 @@ static bool _G_initialized = false;
obj* initialize_init_data_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_char_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_int_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_array_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_fin_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_ordering_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbtree_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbmap_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_instances(w);
return w;
}

View file

@ -359,7 +359,9 @@ static bool _G_initialized = false;
obj* initialize_init_data_dlist(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_function(w);
return w;
}

View file

@ -730,7 +730,9 @@ static bool _G_initialized = false;
obj* initialize_init_data_fin_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_div(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_bitwise(w);
return w;
}

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_fin_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_fin_basic(w);
return w;
}

View file

@ -102,7 +102,9 @@ static bool _G_initialized = false;
obj* initialize_init_data_hashable(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_default(w);
l_string_hashable = _init_l_string_hashable();
lean::mark_persistent(l_string_hashable);

View file

@ -1584,9 +1584,13 @@ static bool _G_initialized = false;
obj* initialize_init_data_hashmap_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_array_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_hashable(w);
l_mk__hashmap__imp___rarg___closed__1 = _init_l_mk__hashmap__imp___rarg___closed__1();
lean::mark_persistent(l_mk__hashmap__imp___rarg___closed__1);

View file

@ -658,10 +658,15 @@ static bool _G_initialized = false;
obj* initialize_init_data_int_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_coe(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_repr(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_to__string(w);
l_int_zero = _init_l_int_zero();
lean::mark_persistent(l_int_zero);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_int_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_int_basic(w);
return w;
}

View file

@ -5638,7 +5638,9 @@ static bool _G_initialized = false;
obj* initialize_init_data_list_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_basic(w);
l_list_unzip___main___rarg___closed__1 = _init_l_list_unzip___main___rarg___closed__1();
lean::mark_persistent(l_list_unzip___main___rarg___closed__1);

View file

@ -20,7 +20,9 @@ static bool _G_initialized = false;
obj* initialize_init_data_list_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_instances(w);
return w;
}

View file

@ -846,8 +846,11 @@ static bool _G_initialized = false;
obj* initialize_init_data_list_instances(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_alternative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_monad(w);
l_list_monad = _init_l_list_monad();
lean::mark_persistent(l_list_monad);

View file

@ -392,6 +392,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_nat_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
l_nat_decidable__eq = _init_l_nat_decidable__eq();
lean::mark_persistent(l_nat_decidable__eq);

View file

@ -354,8 +354,11 @@ static bool _G_initialized = false;
obj* initialize_init_data_nat_bitwise(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_div(w);
if (io_result_is_error(w)) return w;
w = initialize_init_coe(w);
l_nat_land___closed__1 = _init_l_nat_land___closed__1();
lean::mark_persistent(l_nat_land___closed__1);

View file

@ -21,8 +21,11 @@ static bool _G_initialized = false;
obj* initialize_init_data_nat_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_div(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_bitwise(w);
return w;
}

View file

@ -169,7 +169,9 @@ static bool _G_initialized = false;
obj* initialize_init_data_nat_div(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_wf(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_basic(w);
l_nat_has__div = _init_l_nat_has__div();
lean::mark_persistent(l_nat_has__div);

View file

@ -1280,9 +1280,13 @@ static bool _G_initialized = false;
obj* initialize_init_data_option_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_monad(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_alternative(w);
if (io_result_is_error(w)) return w;
w = initialize_init_coe(w);
l_option_monad = _init_l_option_monad();
lean::mark_persistent(l_option_monad);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_option_instances(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
return w;
}

View file

@ -402,6 +402,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_ordering_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_repr(w);
l_ordering_has__repr___closed__1 = _init_l_ordering_has__repr___closed__1();
lean::mark_persistent(l_ordering_has__repr___closed__1);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_ordering_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_ordering_basic(w);
return w;
}

View file

@ -8106,8 +8106,11 @@ static bool _G_initialized = false;
obj* initialize_init_data_rbmap_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_ordering_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_coe(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
l_rbmap_has__repr___rarg___closed__1 = _init_l_rbmap_has__repr___rarg___closed__1();
lean::mark_persistent(l_rbmap_has__repr___rarg___closed__1);

View file

@ -20,7 +20,9 @@ static bool _G_initialized = false;
obj* initialize_init_data_rbmap_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbtree_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbmap_basic(w);
return w;
}

View file

@ -5213,6 +5213,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_rbtree_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbmap_basic(w);
l_rbtree_has__repr___rarg___closed__1 = _init_l_rbtree_has__repr___rarg___closed__1();
lean::mark_persistent(l_rbtree_has__repr___rarg___closed__1);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_rbtree_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbtree_basic(w);
return w;
}

View file

@ -1613,8 +1613,11 @@ static bool _G_initialized = false;
obj* initialize_init_data_repr(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_div(w);
l_bool_has__repr___closed__1 = _init_l_bool_has__repr___closed__1();
lean::mark_persistent(l_bool_has__repr___closed__1);

View file

@ -2287,8 +2287,11 @@ static bool _G_initialized = false;
obj* initialize_init_data_string_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_char_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
l_string_decidable__eq = _init_l_string_decidable__eq();
lean::mark_persistent(l_string_decidable__eq);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_data_string_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
return w;
}

View file

@ -834,9 +834,13 @@ static bool _G_initialized = false;
obj* initialize_init_data_to__string(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_div(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_repr(w);
return w;
}

View file

@ -1801,7 +1801,9 @@ static bool _G_initialized = false;
obj* initialize_init_data_uint(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_fin_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_platform(w);
l_uint8__sz = _init_l_uint8__sz();
lean::mark_persistent(l_uint8__sz);

View file

@ -28,15 +28,25 @@ static bool _G_initialized = false;
obj* initialize_init_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_function(w);
if (io_result_is_error(w)) return w;
w = initialize_init_coe(w);
if (io_result_is_error(w)) return w;
w = initialize_init_wf(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_io(w);
if (io_result_is_error(w)) return w;
w = initialize_init_util(w);
if (io_result_is_error(w)) return w;
w = initialize_init_fix(w);
return w;
}

View file

@ -1100,6 +1100,7 @@ static bool _G_initialized = false;
obj* initialize_init_fix(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
return w;
}

View file

@ -377,6 +377,7 @@ static bool _G_initialized = false;
obj* initialize_init_function(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
return w;
}

View file

@ -1852,8 +1852,11 @@ static bool _G_initialized = false;
obj* initialize_init_io(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_estate(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_fix(w);
l_io_error_has__to__string = _init_l_io_error_has__to__string();
lean::mark_persistent(l_io_error_has__to__string);

View file

@ -2285,8 +2285,11 @@ static bool _G_initialized = false;
obj* initialize_init_lean_compiler_const__folding(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expr(w);
if (io_result_is_error(w)) return w;
w = initialize_init_platform(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_compiler_util(w);
l_lean_compiler_mk__uint__type__name___closed__1 = _init_l_lean_compiler_mk__uint__type__name___closed__1();
lean::mark_persistent(l_lean_compiler_mk__uint__type__name___closed__1);

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_compiler_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_compiler_const__folding(w);
return w;
}

View file

@ -4257,8 +4257,11 @@ static bool _G_initialized = false;
obj* initialize_init_lean_compiler_ir(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_name(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_kvmap(w);
l_lean_ir_type_has__beq = _init_l_lean_ir_type_has__beq();
lean::mark_persistent(l_lean_ir_type_has__beq);

View file

@ -97,6 +97,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_compiler_util(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expr(w);
l_lean_compiler_neutral__expr = _init_l_lean_compiler_neutral__expr();
lean::mark_persistent(l_lean_compiler_neutral__expr);

View file

@ -28,6 +28,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_config(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
l_lean_closure__max__args = _init_l_lean_closure__max__args();
lean::mark_persistent(l_lean_closure__max__args);

View file

@ -228,6 +228,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_declaration(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expr(w);
return w;
}

View file

@ -21,8 +21,11 @@ static bool _G_initialized = false;
obj* initialize_init_lean_default(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_compiler_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_frontend(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_extern(w);
return w;
}

View file

@ -443,6 +443,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_disjoint__set(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_hashmap_basic(w);
return w;
}

View file

@ -33598,9 +33598,13 @@ static bool _G_initialized = false;
obj* initialize_init_lean_elaborator(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_module(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expander(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expr(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_options(w);
l_lean_elaborator_ordered__rbmap_empty___closed__1 = _init_l_lean_elaborator_ordered__rbmap_empty___closed__1();
lean::mark_persistent(l_lean_elaborator_ordered__rbmap_empty___closed__1);

View file

@ -12018,7 +12018,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_expander(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_module(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expr(w);
l_lean_expander_transform__m_monad = _init_l_lean_expander_transform__m_monad();
lean::mark_persistent(l_lean_expander_transform__m_monad);

View file

@ -209,7 +209,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_expr(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_level(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_kvmap(w);
l_lean_expr__is__inhabited = _init_l_lean_expr__is__inhabited();
lean::mark_persistent(l_lean_expr__is__inhabited);

View file

@ -601,7 +601,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_extern(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expr(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
l_lean_get__extern__entry__for__aux___main___closed__1 = _init_l_lean_get__extern__entry__for__aux___main___closed__1();
lean::mark_persistent(l_lean_get__extern__entry__for__aux___main___closed__1);

View file

@ -2224,8 +2224,11 @@ static bool _G_initialized = false;
obj* initialize_init_lean_format(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_control_except(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_reader(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_state(w);
l_lean_format_join___closed__1 = _init_l_lean_format_join___closed__1();
lean::mark_persistent(l_lean_format_join___closed__1);

View file

@ -2320,11 +2320,17 @@ static bool _G_initialized = false;
obj* initialize_init_lean_frontend(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_module(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expander(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_elaborator(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_util(w);
if (io_result_is_error(w)) return w;
w = initialize_init_io(w);
l_io_prim_iterate___at_lean_run__frontend___spec__6___lambda__4___closed__1 = _init_l_io_prim_iterate___at_lean_run__frontend___spec__6___lambda__4___closed__1();
lean::mark_persistent(l_io_prim_iterate___at_lean_run__frontend___spec__6___lambda__4___closed__1);

View file

@ -847,7 +847,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_kvmap(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_name(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
l_lean_data__value_has__beq = _init_l_lean_data__value_has__beq();
lean::mark_persistent(l_lean_data__value_has__beq);

View file

@ -1276,7 +1276,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_level(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_name(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_option_basic(w);
l_lean_level__is__inhabited = _init_l_lean_level__is__inhabited();
lean::mark_persistent(l_lean_level__is__inhabited);

View file

@ -314,7 +314,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_message(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_to__string(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_position(w);
l_lean_message_to__string___closed__1 = _init_l_lean_message_to__string___closed__1();
lean::mark_persistent(l_lean_message_to__string___closed__1);

View file

@ -2309,13 +2309,21 @@ static bool _G_initialized = false;
obj* initialize_init_lean_name(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_coe(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_uint(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_to__string(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_format(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_hashable(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbmap_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbtree_default(w);
l_lean_inhabited = _init_l_lean_inhabited();
lean::mark_persistent(l_lean_inhabited);

View file

@ -3269,7 +3269,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_name__mangling(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_name(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_string__literal(w);
l___private_init_lean_name__mangling_1__string_mangle__aux___main___closed__1 = _init_l___private_init_lean_name__mangling_1__string_mangle__aux___main___closed__1();
lean::mark_persistent(l___private_init_lean_name__mangling_1__string_mangle__aux___main___closed__1);

View file

@ -28,6 +28,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_options(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_kvmap(w);
l_lean_options_mk = _init_l_lean_options_mk();
lean::mark_persistent(l_lean_options_mk);

View file

@ -3512,12 +3512,19 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_basic(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_parsec(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_syntax(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_rec(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_trie(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_identifier(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbmap_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_message(w);
l_lean_parser_max__prec = _init_l_lean_parser_max__prec();
lean::mark_persistent(l_lean_parser_max__prec);

View file

@ -3993,7 +3993,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_combinators(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_instances(w);
l___private_init_lean_parser_combinators_1__many1__aux___main___rarg___closed__1 = _init_l___private_init_lean_parser_combinators_1__many1__aux___main___rarg___closed__1();
lean::mark_persistent(l___private_init_lean_parser_combinators_1__many1__aux___main___rarg___closed__1);

View file

@ -14801,6 +14801,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_command(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_declaration(w);
l_lean_parser_command_parser_lean_parser_has__view = _init_l_lean_parser_command_parser_lean_parser_has__view();
lean::mark_persistent(l_lean_parser_command_parser_lean_parser_has__view);

View file

@ -29992,6 +29992,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_declaration(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_term(w);
l_lean_parser_command_doc__comment = _init_l_lean_parser_command_doc__comment();
lean::mark_persistent(l_lean_parser_command_doc__comment);

View file

@ -2462,7 +2462,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_identifier(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_char_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_parsec(w);
l_lean_id__begin__escape = _init_l_lean_id__begin__escape();
l_lean_id__begin__escape___boxed = _init_l_lean_id__begin__escape___boxed();

View file

@ -6641,6 +6641,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_level(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_pratt(w);
l_lean_parser_level__parser__m_monad = _init_l_lean_parser_level__parser__m_monad();
lean::mark_persistent(l_lean_parser_level__parser__m_monad);

View file

@ -6036,6 +6036,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_module(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_command(w);
l_lean_parser_module__parser__m_monad = _init_l_lean_parser_module__parser__m_monad();
lean::mark_persistent(l_lean_parser_module__parser__m_monad);

View file

@ -19878,6 +19878,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_notation(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_token(w);
l_lean_parser_term_parser_lean_parser_has__tokens___closed__1 = _init_l_lean_parser_term_parser_lean_parser_has__tokens___closed__1();
lean::mark_persistent(l_lean_parser_term_parser_lean_parser_has__tokens___closed__1);

View file

@ -10466,14 +10466,23 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_parsec(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_to__string(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_list_basic(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_except(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_repr(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_name(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_dlist(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_monad__fail(w);
if (io_result_is_error(w)) return w;
w = initialize_init_control_combinators(w);
l_lean_parser_parsec_expected_to__string___main___closed__1 = _init_l_lean_parser_parsec_expected_to__string___main___closed__1();
lean::mark_persistent(l_lean_parser_parsec_expected_to__string___main___closed__1);

View file

@ -956,6 +956,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_pratt(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_token(w);
l_lean_parser_curr__lbp___rarg___lambda__1___closed__1 = _init_l_lean_parser_curr__lbp___rarg___lambda__1___closed__1();
lean::mark_persistent(l_lean_parser_curr__lbp___rarg___lambda__1___closed__1);

View file

@ -447,7 +447,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_rec(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_parsec(w);
if (io_result_is_error(w)) return w;
w = initialize_init_fix(w);
l_lean_parser_rec__t_run__parsec___rarg___lambda__1___closed__1 = _init_l_lean_parser_rec__t_run__parsec___rarg___lambda__1___closed__1();
lean::mark_persistent(l_lean_parser_rec__t_run__parsec___rarg___lambda__1___closed__1);

View file

@ -1093,6 +1093,7 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_string__literal(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_parsec(w);
l_lean_parser_parse__hex__digit___rarg___lambda__3___closed__1 = _init_l_lean_parser_parse__hex__digit___rarg___lambda__3___closed__1();
lean::mark_persistent(l_lean_parser_parse__hex__digit___rarg___lambda__3___closed__1);

View file

@ -2768,7 +2768,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_syntax(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_name(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_parsec(w);
l_lean_parser_choice = _init_l_lean_parser_choice();
lean::mark_persistent(l_lean_parser_choice);

View file

@ -48964,8 +48964,11 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_term(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_level(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_notation(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_expr(w);
l_lean_parser_ident__univ__spec = _init_l_lean_parser_ident__univ__spec();
lean::mark_persistent(l_lean_parser_ident__univ__spec);

View file

@ -26887,7 +26887,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_token(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_combinators(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_parser_string__literal(w);
l_lean_parser_match__token___closed__1 = _init_l_lean_parser_match__token___closed__1();
lean::mark_persistent(l_lean_parser_match__token___closed__1);

View file

@ -1504,7 +1504,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_parser_trie(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbmap_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_format(w);
l_lean_parser_trie_mk___closed__1 = _init_l_lean_parser_trie_mk___closed__1();
lean::mark_persistent(l_lean_parser_trie_mk___closed__1);

View file

@ -804,8 +804,11 @@ static bool _G_initialized = false;
obj* initialize_init_lean_position(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbmap_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_format(w);
l_lean_position_has__lt = _init_l_lean_position_has__lt();
lean::mark_persistent(l_lean_position_has__lt);

View file

@ -1289,10 +1289,15 @@ static bool _G_initialized = false;
obj* initialize_init_lean_trace(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_format(w);
if (io_result_is_error(w)) return w;
w = initialize_init_data_rbmap_default(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_position(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_name(w);
if (io_result_is_error(w)) return w;
w = initialize_init_lean_options(w);
return w;
}

View file

@ -74,7 +74,9 @@ static bool _G_initialized = false;
obj* initialize_init_lean_util(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_lean_position(w);
if (io_result_is_error(w)) return w;
w = initialize_init_io(w);
return w;
}

View file

@ -28,6 +28,7 @@ static bool _G_initialized = false;
obj* initialize_init_platform(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_core(w);
l_system_platform_nbits = _init_l_system_platform_nbits();
lean::mark_persistent(l_system_platform_nbits);

View file

@ -38,6 +38,7 @@ static bool _G_initialized = false;
obj* initialize_init_util(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_string_basic(w);
return w;
}

View file

@ -19,6 +19,7 @@ static bool _G_initialized = false;
obj* initialize_init_wf(obj* w) {
if (_G_initialized) return w;
_G_initialized = true;
if (io_result_is_error(w)) return w;
w = initialize_init_data_nat_basic(w);
return w;
}