diff libinterp/parse-tree/pt-eval.cc @ 27204:9a3e92d02a03

eliminate direct access to call stack in variables functions * pt-eval.h, pt-eval.cc (tree_evaluator::caller_function, tree_evaluator::curr_fcn_unwind_protect_frame): New functions. * variables.cc (curr_fcn_unwind_protect_frame, Fmlock, Fmunlock, Fmislocked, F__varval__): Eliminate direct access to call stack.
author John W. Eaton <jwe@octave.org>
date Mon, 01 Apr 2019 18:21:27 +0000
parents 79065f9d5553
children 6648d1ae05fe
line wrap: on
line diff
--- a/libinterp/parse-tree/pt-eval.cc	Mon Apr 01 18:00:15 2019 +0000
+++ b/libinterp/parse-tree/pt-eval.cc	Mon Apr 01 18:21:27 2019 +0000
@@ -1881,6 +1881,11 @@
     return m_call_stack.current_user_code ();
   }
 
+  unwind_protect * tree_evaluator::curr_fcn_unwind_protect_frame (void) const
+  {
+    return m_call_stack.curr_fcn_unwind_protect_frame ();
+  }
+
   octave_user_code * tree_evaluator::debug_user_code (void) const
   {
     return m_call_stack.debug_user_code ();
@@ -1891,6 +1896,11 @@
     return m_call_stack.current ();
   }
 
+  octave_function * tree_evaluator::caller_function (void) const
+  {
+    return m_call_stack.caller ();
+  }
+
   bool tree_evaluator::goto_frame (size_t n, bool verbose)
   {
     return m_call_stack.goto_frame (n, verbose);