@@ -1756,6 +1756,8 @@ class ASRToLLVMVisitor : public ASR::BaseVisitor<ASRToLLVMVisitor>
1756
1756
}
1757
1757
1758
1758
void visit_Program (const ASR::Program_t &x) {
1759
+ bool is_dict_present_copy = dict_api->is_dict_present ;
1760
+ dict_api->is_dict_present = false ;
1759
1761
llvm_goto_targets.clear ();
1760
1762
// Generate code for nested subroutines and functions first:
1761
1763
for (auto &item : x.m_symtab ->get_scope ()) {
@@ -1784,6 +1786,7 @@ class ASRToLLVMVisitor : public ASR::BaseVisitor<ASRToLLVMVisitor>
1784
1786
llvm::Value *ret_val2 = llvm::ConstantInt::get (context,
1785
1787
llvm::APInt (32 , 0 ));
1786
1788
builder->CreateRet (ret_val2);
1789
+ dict_api->is_dict_present = is_dict_present_copy;
1787
1790
}
1788
1791
1789
1792
/*
@@ -2586,6 +2589,8 @@ class ASRToLLVMVisitor : public ASR::BaseVisitor<ASRToLLVMVisitor>
2586
2589
}
2587
2590
2588
2591
void visit_Function (const ASR::Function_t &x) {
2592
+ bool is_dict_present_copy = dict_api->is_dict_present ;
2593
+ dict_api->is_dict_present = false ;
2589
2594
llvm_goto_targets.clear ();
2590
2595
instantiate_function (x);
2591
2596
if (x.m_deftype == ASR::deftypeType::Interface) {
@@ -2596,6 +2601,7 @@ class ASRToLLVMVisitor : public ASR::BaseVisitor<ASRToLLVMVisitor>
2596
2601
visit_procedures (x);
2597
2602
generate_function (x);
2598
2603
parent_function = nullptr ;
2604
+ dict_api->is_dict_present = is_dict_present_copy;
2599
2605
}
2600
2606
2601
2607
void instantiate_function (const ASR::Function_t &x){
0 commit comments