diff libinterp/corefcn/symscope.h @ 26040:0af4653e48a4

install auto function vars in symbol scope when parsing function * symscope.h, symscope.cc (symbol_scope::install_auto_fcn_vars, symbol_scope_rep::install_auto_fcn_vars, symbol_scope_rep::install_auto_fcn_var): New functions. * oct-parse.yy (base_parser::finish_function): Call symbol_scope::install_auto_fcn_vars.
author John W. Eaton <jwe@octave.org>
date Sat, 03 Nov 2018 09:27:37 -0400
parents cb1606f78f6b
children edcb09d4b1f5
line wrap: on
line diff
--- a/libinterp/corefcn/symscope.h	Fri Nov 02 16:13:08 2018 -0400
+++ b/libinterp/corefcn/symscope.h	Sat Nov 03 09:27:37 2018 -0400
@@ -82,6 +82,10 @@
       m_symbols[sr.name ()] = sr;
     }
 
+    void install_auto_fcn_vars (void);
+
+    void install_auto_fcn_var (const std::string& name);
+
     bool is_nested (void) const { return m_is_nested; }
 
     void mark_nested (void) { m_is_nested = true; }
@@ -627,6 +631,12 @@
         m_rep->insert_symbol_record (sr);
     }
 
+    void install_auto_fcn_vars (void)
+    {
+      if (m_rep)
+        m_rep->install_auto_fcn_vars ();
+    }
+
     bool is_nested (void) const
     {
       return m_rep ? m_rep->is_nested () : false;