Mercurial > octave
comparison libinterp/corefcn/call-stack.h @ 27844:e06ce39f78ad
allow mlock to lock current dynamically loaded function (bug #57245)
* pt-eval.cc (tree_evaluator::mlock): Simply forward to
call_stack::mlock.
* call-stack.h, call-stack.cc (call_stack::mlock): New function.
Lock first user-defined or dynamically loaded function on the call
stack. Silently skip the built-in Fmlock function. Warn if called
from any other built-in function.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Mon, 16 Dec 2019 14:34:34 -0500 |
parents | e091e09d26f0 |
children | 020d0e8f7ac6 |
comparison
equal
deleted
inserted
replaced
27843:48c77d47ea81 | 27844:e06ce39f78ad |
---|---|
253 | 253 |
254 void pop (void); | 254 void pop (void); |
255 | 255 |
256 void clear (void); | 256 void clear (void); |
257 | 257 |
258 // Lock current function. Skip built-in functions (mlock is skipped | |
259 // silently; warn for others) and look for the first caller that is | |
260 // a user-defined (m-file) or dynamically loaded (.oct or .mex) | |
261 // function. That allows the built-in Fmlock function to lock the | |
262 // calling function instead of locking istelf. | |
263 | |
264 void mlock (void) const; | |
265 | |
258 symbol_info_list all_variables (void); | 266 symbol_info_list all_variables (void); |
259 | 267 |
260 std::list<symbol_record> glob (const std::string& pattern) const; | 268 std::list<symbol_record> glob (const std::string& pattern) const; |
261 | 269 |
262 std::list<symbol_record> regexp (const std::string& pattern) const; | 270 std::list<symbol_record> regexp (const std::string& pattern) const; |