octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #40231] Memory leak in eval


From: Rik
Subject: [Octave-bug-tracker] [bug #40231] Memory leak in eval
Date: Thu, 10 Oct 2013 02:56:55 +0000
User-agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0

URL:
  <http://savannah.gnu.org/bugs/?40231>

                 Summary: Memory leak in eval
                 Project: GNU Octave
            Submitted by: rik5
            Submitted on: Wed 09 Oct 2013 07:56:54 PM PDT
                Category: Interpreter
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Other
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: dev
        Operating System: GNU/Linux

    _______________________________________________________

Details:

Along with evalin, reported earlier, there appears to be a leak in eval.


==16089== 106 (56 direct, 50 indirect) bytes in 1 blocks are definitely lost
in loss record 801 of 1,172
==16089==    at 0x4C2B1C7: operator new(unsigned long) (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==16089==    by 0x58B1730: octave_base_parser::make_constant(int, token*)
(oct-parse.yy:1862)
==16089==    by 0x58AAC98: octave_push_parse(octave_pstate*, int, YYSTYPE
const*, octave_base_parser&) (oct-parse.yy:413)
==16089==    by 0x58A9CE2: octave_pull_parse(octave_pstate*,
octave_base_parser&) (oct-parse.cc:2099)
==16089==    by 0x58A9C5F: octave_parse(octave_base_parser&)
(oct-parse.cc:2067)
==16089==    by 0x58B4FDB: octave_parser::run() (oct-parse.yy:3245)
==16089==    by 0x58B86C0: eval_string(std::string const&, bool, int&, int)
(oct-parse.yy:4094)
==16089==    by 0x58B8B9E: eval_string(octave_value const&, bool, int&, int)
(oct-parse.yy:4179)
==16089==    by 0x58B8D01: Feval(octave_value_list const&, int)
(oct-parse.yy:4243)
==16089==    by 0x57673B0: octave_builtin::do_multi_index_op(int,
octave_value_list const&, std::list<octave_lvalue,
std::allocator<octave_lvalue> > const*) (ov-builtin.cc:131)
==16089==    by 0x5767057: octave_builtin::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*)
(ov-builtin.cc:64)
==16089==    by 0x5766F45: octave_builtin::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int)
(ov-builtin.cc:47)
==16089==    by 0x580DBC7: octave_value::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int)
(ov.cc:1269)
==16089==    by 0x580DC6F: octave_value::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (ov.cc:1280)
==16089==    by 0x587696E: tree_index_expression::rvalue(int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*)
(pt-idx.cc:414)
==16089==    by 0x58760C6: tree_index_expression::rvalue(int) (pt-idx.cc:284)
==16089==    by 0x5876BC5: tree_index_expression::rvalue1(int)
(pt-idx.cc:425)
==16089==    by 0x587016A: tree_evaluator::visit_statement(tree_statement&)
(pt-eval.cc:747)
==16089==    by 0x5890AD3: tree_statement::accept(tree_walker&)
(pt-stmt.cc:178)
==16089==    by 0x58703D5:
tree_evaluator::visit_statement_list(tree_statement_list&) (pt-eval.cc:797)
==16089==    by 0x58910F3: tree_statement_list::accept(tree_walker&)
(pt-stmt.cc:291)
==16089==    by 0x58033B6: octave_user_function::do_multi_index_op(int,
octave_value_list const&, std::list<octave_lvalue,
std::allocator<octave_lvalue> > const*) (ov-usr-fcn.cc:588)
==16089==    by 0x5802CA5: octave_user_function::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*)
(ov-usr-fcn.cc:437)
==16089==    by 0x5802B93: octave_user_function::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int)
(ov-usr-fcn.cc:420)
==16089==    by 0x580DBC7: octave_value::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int)
(ov.cc:1269)
==16089==    by 0x580DC6F: octave_value::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (ov.cc:1280)
==16089==    by 0x587696E: tree_index_expression::rvalue(int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*)
(pt-idx.cc:414)
==16089==    by 0x58760C6: tree_index_expression::rvalue(int) (pt-idx.cc:284)
==16089==    by 0x58B883E: eval_string(std::string const&, bool, int&, int)
(oct-parse.yy:4126)
==16089==    by 0x58B8B9E: eval_string(octave_value const&, bool, int&, int)
(oct-parse.yy:4179)
==16089==    by 0x58B8D01: Feval(octave_value_list const&, int)
(oct-parse.yy:4243)
==16089==    by 0x57673B0: octave_builtin::do_multi_index_op(int,
octave_value_list const&, std::list<octave_lvalue,
std::allocator<octave_lvalue> > const*) (ov-builtin.cc:131)
==16089==    by 0x5767057: octave_builtin::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*)
(ov-builtin.cc:64)
==16089==    by 0x5766F45: octave_builtin::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int)
(ov-builtin.cc:47)
==16089==    by 0x580DBC7: octave_value::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int)
(ov.cc:1269)
==16089==    by 0x580DC6F: octave_value::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (ov.cc:1280)
==16089==    by 0x587696E: tree_index_expression::rvalue(int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*)
(pt-idx.cc:414)
==16089==    by 0x58760C6: tree_index_expression::rvalue(int) (pt-idx.cc:284)
==16089==    by 0x5876BC5: tree_index_expression::rvalue1(int)
(pt-idx.cc:425)
==16089==    by 0x587016A: tree_evaluator::visit_statement(tree_statement&)
(pt-eval.cc:747)
==16089==    by 0x5890AD3: tree_statement::accept(tree_walker&)
(pt-stmt.cc:178)
==16089==    by 0x58703D5:
tree_evaluator::visit_statement_list(tree_statement_list&) (pt-eval.cc:797)
==16089==    by 0x58910F3: tree_statement_list::accept(tree_walker&)
(pt-stmt.cc:291)
==16089==    by 0x58707C1:
tree_evaluator::visit_try_catch_command(tree_try_catch_command&)
(pt-eval.cc:910)
==16089==    by 0x587221B: tree_try_catch_command::accept(tree_walker&)
(pt-except.cc:72)
==16089==    by 0x5870083: tree_evaluator::visit_statement(tree_statement&)
(pt-eval.cc:721)
==16089==    by 0x5890AD3: tree_statement::accept(tree_walker&)
(pt-stmt.cc:178)
==16089==    by 0x58703D5:
tree_evaluator::visit_statement_list(tree_statement_list&) (pt-eval.cc:797)
==16089==    by 0x58910F3: tree_statement_list::accept(tree_walker&)
(pt-stmt.cc:291)
==16089==    by 0x586FBE4:
tree_evaluator::visit_if_command_list(tree_if_command_list&) (pt-eval.cc:588)







    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?40231>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]