@@ -426,26 +426,26 @@ void get_calls_to_global_init_and_stmts(Allocator &al, const Location &loc, Symb
426
426
ASR::Module_t* mod, std::vector<ASR::asr_t *> &tmp_vec) {
427
427
428
428
std::string mod_name = mod->m_name ;
429
- std::string g_func_name = mod_name + " @global_initializer " ;
430
- ASR::symbol_t *g_func = mod->m_symtab ->get_symbol (" global_initializer " );
429
+ std::string g_func_name = mod_name + " __global_initializer " ;
430
+ ASR::symbol_t *g_func = mod->m_symtab ->get_symbol (g_func_name );
431
431
if (g_func && !scope->get_symbol (g_func_name)) {
432
432
ASR::symbol_t *es = ASR::down_cast<ASR::symbol_t >(
433
433
ASR::make_ExternalSymbol_t (al, mod->base .base .loc ,
434
434
scope, s2c (al, g_func_name), g_func,
435
- s2c (al, mod_name), nullptr , 0 , s2c (al, " global_initializer " ),
435
+ s2c (al, mod_name), nullptr , 0 , s2c (al, g_func_name ),
436
436
ASR::accessType::Public));
437
437
scope->add_symbol (g_func_name, es);
438
438
tmp_vec.push_back (ASRUtils::make_SubroutineCall_t_util (al, loc,
439
439
es, g_func, nullptr , 0 , nullptr , nullptr , false ));
440
440
}
441
441
442
- g_func_name = mod_name + " @global_statements " ;
443
- g_func = mod->m_symtab ->get_symbol (" global_statements " );
442
+ g_func_name = mod_name + " __global_statements " ;
443
+ g_func = mod->m_symtab ->get_symbol (g_func_name );
444
444
if (g_func && !scope->get_symbol (g_func_name)) {
445
445
ASR::symbol_t *es = ASR::down_cast<ASR::symbol_t >(
446
446
ASR::make_ExternalSymbol_t (al, mod->base .base .loc ,
447
447
scope, s2c (al, g_func_name), g_func,
448
- s2c (al, mod_name), nullptr , 0 , s2c (al, " global_statements " ),
448
+ s2c (al, mod_name), nullptr , 0 , s2c (al, g_func_name ),
449
449
ASR::accessType::Public));
450
450
scope->add_symbol (g_func_name, es);
451
451
tmp_vec.push_back (ASRUtils::make_SubroutineCall_t_util (al, loc,
@@ -4784,7 +4784,7 @@ class BodyVisitor : public CommonVisitor<BodyVisitor> {
4784
4784
// `pass_wrap_global_stmts_into_function` pass
4785
4785
unit->m_items = global_init.p ;
4786
4786
unit->n_items = global_init.size ();
4787
- std::string func_name = " global_initializer " ;
4787
+ std::string func_name = module_name + " __global_initializer " ;
4788
4788
LCompilers::PassOptions pass_options;
4789
4789
pass_options.run_fun = func_name;
4790
4790
pass_wrap_global_stmts (al, *unit, pass_options);
@@ -4807,7 +4807,7 @@ class BodyVisitor : public CommonVisitor<BodyVisitor> {
4807
4807
if (items.n > 0 ) {
4808
4808
unit->m_items = items.p ;
4809
4809
unit->n_items = items.size ();
4810
- std::string func_name = " global_statements " ;
4810
+ std::string func_name = module_name + " __global_statements " ;
4811
4811
// Wrap all the global statements into a Function
4812
4812
LCompilers::PassOptions pass_options;
4813
4813
pass_options.run_fun = func_name;
0 commit comments