[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #41945] Segfault when subsasgn returns nothing
From: |
Andreas Weber |
Subject: |
[Octave-bug-tracker] [bug #41945] Segfault when subsasgn returns nothing in user-defined class |
Date: |
Mon, 24 Mar 2014 21:23:15 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20140319 Firefox/24.0 Iceweasel/24.4.0 |
Follow-up Comment #2, bug #41945 (project octave):
segfault here also with default 54a1e95365e1, configured without jit. GDB
backtrace below.
I figured out that it only segfaults when optimize_subsasgn_calls is enabled.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffdb702700 (LWP 2359)]
0x00007ffff6cc19c6 in std::list<tree_decl_elt*, std::allocator<tree_decl_elt*>
>::begin (this=0x0)
at /usr/include/c++/4.7/bits/stl_list.h:749
749 { return const_iterator(this->_M_impl._M_node._M_next); }
(gdb) bt
#0 0x00007ffff6cc19c6 in std::list<tree_decl_elt*,
std::allocator<tree_decl_elt*> >::begin (this=0x0)
at /usr/include/c++/4.7/bits/stl_list.h:749
#1 0x00007ffff6cbc792 in std::list<tree_decl_elt*,
std::allocator<tree_decl_elt*> >::size (this=0x0)
at /usr/include/c++/4.7/bits/stl_list.h:855
#2 0x00007ffff6cb87ce in octave_base_list<tree_decl_elt*>::size (this=0x0)
at ../../octave-src/liboctave/util/base-list.h:44
#3 0x00007ffff6cb8914 in octave_base_list<tree_decl_elt*>::length (this=0x0)
at ../../octave-src/liboctave/util/base-list.h:45
#4 0x00007ffff6d57680 in octave_user_function::subsasgn_optimization_ok
(this=0x9a5b30)
at ../../octave-src/libinterp/octave-value/ov-usr-fcn.cc:694
#5 0x00007ffff6c7b23c in octave_class::subsasgn_common (this=0xd6e960,
obj=..., type=..., idx=..., rhs=...)
at ../../octave-src/libinterp/octave-value/ov-class.cc:594
#6 0x00007ffff6c7ad4e in octave_class::subsasgn (this=0xd6e960, type=...,
idx=..., rhs=...)
at ../../octave-src/libinterp/octave-value/ov-class.cc:530
#7 0x00007ffff6d62116 in octave_value::subsasgn (this=0x99b9a0, type=...,
idx=..., rhs=...)
at ../../octave-src/libinterp/octave-value/ov.cc:1387
#8 0x00007ffff6d622d8 in octave_value::assign (this=0x99b9a0,
op=octave_value::op_asn_eq, type=..., idx=..., rhs=...)
at ../../octave-src/libinterp/octave-value/ov.cc:1429
#9 0x00007ffff713484e in
symbol_table::symbol_record::symbol_record_rep::assign (this=0xd60170,
op=octave_value::op_asn_eq, type=..., idx=..., value=...,
context=18446744073709551615)
at ../../octave-src/libinterp/corefcn/symtab.h:231
#10 0x00007ffff713494f in symbol_table::symbol_record::assign
(this=0x7fffdb701a68, op=octave_value::op_asn_eq,
type=..., idx=..., value=..., context=18446744073709551615) at
../../octave-src/libinterp/corefcn/symtab.h:547
#11 0x00007ffff7134490 in octave_lvalue::assign (this=0x7fffdb701a60,
op=octave_value::op_asn_eq, rhs=...)
at ../../octave-src/libinterp/corefcn/oct-lvalue.cc:40
#12 0x00007ffff6dbde16 in tree_simple_assignment::rvalue1 (this=0xd71be0)
at ../../octave-src/libinterp/parse-tree/pt-assign.cc:116
#13 0x00007ffff6dcc46e in tree_evaluator::visit_statement
(this=0x7ffff7903e38, stmt=...)
at ../../octave-src/libinterp/parse-tree/pt-eval.cc:753
#14 0x00007ffff6dee3e2 in tree_statement::accept (this=0xd71c20, tw=...)
at ../../octave-src/libinterp/parse-tree/pt-stmt.cc:178
#15 0x00007ffff6dcc6e8 in tree_evaluator::visit_statement_list
(this=0x7ffff7903e38, lst=...)
at ../../octave-src/libinterp/parse-tree/pt-eval.cc:803
#16 0x00007ffff6deea2e in tree_statement_list::accept (this=0x9a0990, tw=...)
at ../../octave-src/libinterp/parse-tree/pt-stmt.cc:291
#17 0x00007ffff72286c3 in main_loop () at
../../octave-src/libinterp/corefcn/toplev.cc:593
#18 0x00007ffff68d8c20 in octave_execute_interpreter () at
../../octave-src/libinterp/octave.cc:888
#19 0x00007ffff7aa03ea in octave_cli_thread::run (this=0x7fffffffc390) at
../../octave-src/libgui/src/octave-gui.cc:76
#20 0x00007ffff2a72d0b in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#21 0x00007ffff454eb50 in start_thread (arg=<optimized out>) at
pthread_create.c:304
#22 0x00007ffff42990ed in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#23 0x0000000000000000 in ?? ()
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?41945>
_______________________________________________
Nachricht gesendet von/durch Savannah
http://savannah.gnu.org/