@@ -4060,6 +4060,24 @@ class SymbolTableVisitor : public CommonVisitor<SymbolTableVisitor> {
40604060 return nullptr ;
40614061 }
40624062
4063+ // Implement visit_While for Symbol Table visitor.
4064+ void visit_While (const AST::While_t &/* x*/ ) {}
4065+
4066+ // Implement visit_Delete for Symbol Table visitor.
4067+ void visit_Delete (const AST::Delete_t &/* x*/ ) {}
4068+
4069+ // Implement visit_Pass for Symbol Table visitor.
4070+ void visit_Pass (const AST::Pass_t &/* x*/ ) {}
4071+
4072+ // Implement visit_Return for Symbol Table visitor.
4073+ void visit_Return (const AST::Return_t &/* x*/ ) {}
4074+
4075+ // Implement visit_Raise for Symbol Table visitor.
4076+ void visit_Raise (const AST::Raise_t &/* x*/ ) {}
4077+
4078+ // Implement visit_Global for Symbol Table visitor.
4079+ void visit_Global (const AST::Global_t &/* x*/ ) {}
4080+
40634081 void visit_FunctionDef (const AST::FunctionDef_t &x) {
40644082 dependencies.clear (al);
40654083 SymbolTable *parent_scope = current_scope;
@@ -4304,6 +4322,12 @@ class SymbolTableVisitor : public CommonVisitor<SymbolTableVisitor> {
43044322 }
43054323 } else {
43064324 bool is_pure = false , is_module = false ;
4325+
4326+ // This checks for internal function defintions as well.
4327+ for (size_t i = 0 ; i < x.n_body ; i++) {
4328+ visit_stmt (*x.m_body [i]);
4329+ }
4330+
43074331 tmp = ASRUtils::make_Function_t_util (
43084332 al, x.base .base .loc ,
43094333 /* a_symtab */ current_scope,
0 commit comments