[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running
From: |
Markus Mützel |
Subject: |
[Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos |
Date: |
Sat, 5 Jan 2019 12:12:09 -0500 (EST) |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0 |
Follow-up Comment #35, bug #48519 (project octave):
I don't see immediately why it fails in these lines.
I tried to replicate (with Pantxo's second patch on top of af7faef288ad). But
compiling after:
make maintainer-clean
cd .build
../configure CPPFLAGS=-I/usr/include/hdf5/serial
LDFLAGS="-L/usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)/hdf5/serial"
FFLAGS=-g CFLAGS=-g CXXFLAGS=-g --enable-address-sanitizer-flags
--disable-java
make -j3
Fails with:
GEN doc/interpreter/voronoi.txt
GEN doc/interpreter/triplot.txt
GEN doc/interpreter/griddata.txt
=================================================================
=================================================================
==99945==ERROR: AddressSanitizer: stack-use-after-scope on address
0x7fde1714e3d0 at pc 0x7fde3616a99e bp 0x7fde1714e0c0 sp 0x7fde1714e0b0
==99948==ERROR: AddressSanitizer: stack-use-after-scope on address
0x7fd68aa523d0 at pc 0x7fd6a9a6e99e bp 0x7fd68aa520c0 sp 0x7fd68aa520b0
WRITE of size 8 at 0x7fd68aa523d0 thread T7 (QThread)
WRITE of size 8 at 0x7fde1714e3d0 thread T7 (QThread)
=================================================================
==99946==ERROR: AddressSanitizer: stack-use-after-scope on address
0x7f4b5febf3d0 at pc 0x7f4b7eedb99e bp 0x7f4b5febf0c0 sp 0x7f4b5febf0b0
WRITE of size 8 at 0x7f4b5febf3d0 thread T7 (QThread)
#0 0x7fde3616a99d in Array<octave_value>::Array(Array<octave_value>
const&, dim_vector const&) ../liboctave/array/Array.cc:52
#1 0x7fde3616f4b2 in Array<octave_value>::index(idx_vector const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x11374b2)
#2 0x7fde36173041 in Array<octave_value>::index(idx_vector const&, bool,
octave_value const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x113b041)
#0 0x7fd6a9a6e99d in Array<octave_value>::Array(Array<octave_value>
const&, dim_vector const&) ../liboctave/array/Array.cc:52
#1 0x7fd6a9a734b2 in Array<octave_value>::index(idx_vector const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x11374b2)
#2 0x7fd6a9a77041 in Array<octave_value>::index(idx_vector const&, bool,
octave_value const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x113b041)
#3 0x7fde36813f1c in Cell::index(octave_value_list const&, bool) const
../libinterp/corefcn/Cell.cc:176
#3 0x7fd6aa117f1c in Cell::index(octave_value_list const&, bool) const
../libinterp/corefcn/Cell.cc:176
#4 0x7fd6a9c22146 in
octave_base_matrix<Cell>::do_index_op(octave_value_list const&, bool)
../libinterp/octave-value/ov-cell.cc:70
#5 0x7fd6a9c23c5c in octave_cell::subsref(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::list<octave_value_list, std::allocator<octave_value_list> >
const&, int) ../libinterp/octave-value/ov-cell.cc:160
#4 0x7fde3631e146 in
octave_base_matrix<Cell>::do_index_op(octave_value_list const&, bool)
../libinterp/octave-value/ov-cell.cc:70
#5 0x7fde3631fc5c in octave_cell::subsref(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::list<octave_value_list, std::allocator<octave_value_list> >
const&, int) ../libinterp/octave-value/ov-cell.cc:160
#0 0x7f4b7eedb99d in Array<octave_value>::Array(Array<octave_value>
const&, dim_vector const&) ../liboctave/array/Array.cc:52
#1 0x7f4b7eee04b2 in Array<octave_value>::index(idx_vector const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x11374b2)
#2 0x7f4b7eee4041 in Array<octave_value>::index(idx_vector const&, bool,
octave_value const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x113b041)
#3 0x7f4b7f584f1c in Cell::index(octave_value_list const&, bool) const
../libinterp/corefcn/Cell.cc:176
#4 0x7f4b7f08f146 in
octave_base_matrix<Cell>::do_index_op(octave_value_list const&, bool)
../libinterp/octave-value/ov-cell.cc:70
#5 0x7f4b7f090c5c in octave_cell::subsref(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::list<octave_value_list, std::allocator<octave_value_list> >
const&, int) ../libinterp/octave-value/ov-cell.cc:160
#6 0x7fd6a9e8ba1f in
octave_value::subsref(std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, std::__cxx11::list<octave_value_list,
std::allocator<octave_value_list> > const&, int)
../libinterp/octave-value/ov.cc:1424
#6 0x7fde36587a1f in
octave_value::subsref(std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, std::__cxx11::list<octave_value_list,
std::allocator<octave_value_list> > const&, int)
../libinterp/octave-value/ov.cc:1424
#6 0x7f4b7f2f8a1f in
octave_value::subsref(std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, std::__cxx11::list<octave_value_list,
std::allocator<octave_value_list> > const&, int)
../libinterp/octave-value/ov.cc:1424
#7 0x7fd6aa09a40c in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2158
#7 0x7fde3679640c in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2158
#8 0x7fd6aa0d56c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#8 0x7fde367d16c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#7 0x7f4b7f50740c in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2158
#9 0x7fd6a9cf009a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#10 0x7fd6aa0f00f4 in
octave::tm_row_const::init(octave::tree_argument_list const&,
octave::tree_evaluator&) ../libinterp/parse-tree/pt-tm-const.cc:168
#11 0x7fd6aa0f7bd1 in
octave::tm_row_const::tm_row_const(octave::tree_argument_list const&,
octave::tree_evaluator&) ../libinterp/parse-tree/pt-tm-const.h:154
#12 0x7fd6aa0f2c44 in octave::tm_const::init(octave::tree_matrix const&)
../libinterp/parse-tree/pt-tm-const.cc:308
#13 0x7fd6aa0b40e8 in octave::tm_const::tm_const(octave::tree_matrix
const&, octave::tree_evaluator&)
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x17780e8)
#14 0x7fd6aa09b2d5 in
octave::tree_evaluator::visit_matrix(octave::tree_matrix&)
../libinterp/parse-tree/pt-eval.cc:2226
#15 0x7fd6aa0ddf54 in octave::tree_matrix::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-mat.h:70
#16 0x7fd6a9cf009a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#17 0x7fd6aa0a06b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#9 0x7fde363ec09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#10 0x7fde367ec0f4 in
octave::tm_row_const::init(octave::tree_argument_list const&,
octave::tree_evaluator&) ../libinterp/parse-tree/pt-tm-const.cc:168
#11 0x7fde367f3bd1 in
octave::tm_row_const::tm_row_const(octave::tree_argument_list const&,
octave::tree_evaluator&) ../libinterp/parse-tree/pt-tm-const.h:154
#12 0x7fde367eec44 in octave::tm_const::init(octave::tree_matrix const&)
../libinterp/parse-tree/pt-tm-const.cc:308
#13 0x7fde367b00e8 in octave::tm_const::tm_const(octave::tree_matrix
const&, octave::tree_evaluator&)
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x17780e8)
#14 0x7fde367972d5 in
octave::tree_evaluator::visit_matrix(octave::tree_matrix&)
../libinterp/parse-tree/pt-eval.cc:2226
#18 0x7fd6aa076c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#19 0x7fd6a9cf009a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#20 0x7fd6aa0a199f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#8 0x7f4b7f5426c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#15 0x7fde367d9f54 in octave::tree_matrix::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-mat.h:70
#16 0x7fde363ec09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#17 0x7fde3679c6b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#21 0x7fd6aa0ed3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#22 0x7fd6aa0a207b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#18 0x7fde36772c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#19 0x7fde363ec09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#20 0x7fde3679d99f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#23 0x7fd6a9cf0cce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#24 0x7fd6aa098689 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:1862
#25 0x7fd6aa07ad80 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:115
#26 0x7fd6aa09828f in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:1840
#9 0x7f4b7f15d09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#10 0x7f4b7f55d0f4 in
octave::tm_row_const::init(octave::tree_argument_list const&,
octave::tree_evaluator&) ../libinterp/parse-tree/pt-tm-const.cc:168
#11 0x7f4b7f564bd1 in
octave::tm_row_const::tm_row_const(octave::tree_argument_list const&,
octave::tree_evaluator&) ../libinterp/parse-tree/pt-tm-const.h:154
#12 0x7f4b7f55fc44 in octave::tm_const::init(octave::tree_matrix const&)
../libinterp/parse-tree/pt-tm-const.cc:308
#21 0x7fde367e93c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#13 0x7f4b7f5210e8 in octave::tm_const::tm_const(octave::tree_matrix
const&, octave::tree_evaluator&)
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x17780e8)
#22 0x7fde3679e07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#14 0x7f4b7f5082d5 in
octave::tree_evaluator::visit_matrix(octave::tree_matrix&)
../libinterp/parse-tree/pt-eval.cc:2226
#27 0x7fd6aa0ea096 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:148
#28 0x7fd6aa0a17ca in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2753
#29 0x7fd6aa0ed3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#30 0x7fd6aa0a207b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#31 0x7fd6a9cf0cce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#32 0x7fd6aa096537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#15 0x7f4b7f54af54 in octave::tree_matrix::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-mat.h:70
#16 0x7f4b7f15d09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#17 0x7f4b7f50d6b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#18 0x7f4b7f4e3c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#19 0x7f4b7f15d09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#20 0x7f4b7f50e99f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#23 0x7fde363eccce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#24 0x7fde36794689 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:1862
#25 0x7fde36776d80 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:115
#26 0x7fde3679428f in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:1840
#33 0x7fd6a9e76857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#34 0x7fd6aa0994ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#35 0x7fd6aa0d56c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#36 0x7fd6a9cf009a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#37 0x7fd6aa0a06b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#38 0x7fd6aa076c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#39 0x7fd6a9cf009a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#40 0x7fd6aa0a199f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#41 0x7fd6aa0ed3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#42 0x7fd6aa0a207b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#43 0x7fd6a9cf0cce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#44 0x7fd6aa098689 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:1862
#45 0x7fd6aa07ad80 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:115
#46 0x7fd6aa09828f in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:1840
#47 0x7fd6aa0ea096 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:148
#48 0x7fd6aa0a17ca in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2753
#49 0x7fd6aa0ed3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#50 0x7fd6aa0a207b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#51 0x7fd6a9cf0cce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#52 0x7fd6aa096537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#53 0x7fd6a9e76857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#54 0x7fd6aa0994ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#55 0x7fd6aa0d56c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#56 0x7fd6a9cf009a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#57 0x7fd6aa0a06b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#58 0x7fd6aa076c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#59 0x7fd6a9cf009a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#60 0x7fd6aa0a199f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#61 0x7fd6aa0ed3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#62 0x7fd6aa0a207b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#63 0x7fd6a9cf0cce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#64 0x7fd6aa096537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#65 0x7fd6a9e76857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#66 0x7fd6aa0994ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#67 0x7fd6aa0d56c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#68 0x7fd6aa0b2042 in
octave::tree_evaluator::evaluate_n(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:343
#69 0x7fd6aa088147 in
octave::tree_evaluator::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/parse-tree/pt-eval.cc:242
#27 0x7fde367e6096 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:148
#28 0x7fde3679d7ca in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2753
#29 0x7fde367e93c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#30 0x7fde3679e07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#31 0x7fde363eccce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#32 0x7fde36792537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#70 0x7fd6aa89b410 in
octave::interpreter::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/corefcn/interpreter.cc:1137
#71 0x7fd6aa896f37 in octave::interpreter::execute_eval_option_code()
../libinterp/corefcn/interpreter.cc:857
#72 0x7fd6aa894ea5 in octave::interpreter::execute()
../libinterp/corefcn/interpreter.cc:662
#21 0x7f4b7f55a3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#22 0x7f4b7f50f07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#33 0x7fde36572857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#34 0x7fde367954ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#35 0x7fde367d16c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#36 0x7fde363ec09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#37 0x7fde3679c6b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#38 0x7fde36772c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#39 0x7fde363ec09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#40 0x7fde3679d99f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#41 0x7fde367e93c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#42 0x7fde3679e07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#43 0x7fde363eccce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#44 0x7fde36794689 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:1862
#45 0x7fde36776d80 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:115
#46 0x7fde3679428f in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:1840
#47 0x7fde367e6096 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:148
#48 0x7fde3679d7ca in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2753
#49 0x7fde367e93c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#50 0x7fde3679e07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#51 0x7fde363eccce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#52 0x7fde36792537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#53 0x7fde36572857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#54 0x7fde367954ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#55 0x7fde367d16c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#56 0x7fde363ec09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#57 0x7fde3679c6b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#58 0x7fde36772c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#59 0x7fde363ec09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#60 0x7fde3679d99f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#61 0x7fde367e93c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#62 0x7fde3679e07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#63 0x7fde363eccce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#64 0x7fde36792537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#65 0x7fde36572857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#66 0x7fde367954ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#67 0x7fde367d16c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#68 0x7fde367ae042 in
octave::tree_evaluator::evaluate_n(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:343
#69 0x7fde36784147 in
octave::tree_evaluator::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/parse-tree/pt-eval.cc:242
#23 0x7f4b7f15dcce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#24 0x7f4b7f505689 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:1862
#25 0x7f4b7f4e7d80 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:115
#26 0x7f4b7f50528f in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:1840
#27 0x7f4b7f557096 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:148
#28 0x7f4b7f50e7ca in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2753
#29 0x7f4b7f55a3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#30 0x7f4b7f50f07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#31 0x7f4b7f15dcce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#32 0x7f4b7f503537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#70 0x7fde36f97410 in
octave::interpreter::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/corefcn/interpreter.cc:1137
#71 0x7fde36f92f37 in octave::interpreter::execute_eval_option_code()
../libinterp/corefcn/interpreter.cc:857
#72 0x7fde36f90ea5 in octave::interpreter::execute()
../libinterp/corefcn/interpreter.cc:662
#73 0x7fd6ab65f243 in octave::octave_interpreter::execute()
../libgui/src/main-window.cc:146
#74 0x7fd6ab8366b3 in
octave::octave_interpreter::qt_static_metacall(QObject*, QMetaObject::Call,
int, void**) libgui/src/moc-main-window.cc:89
#75 0x7fd6a58acf91 in QObject::event(QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x294f91)
#76 0x7fd6a62424a0 in QApplicationPrivate::notify_helper(QObject*,
QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15f4a0)
#77 0x7fd6a6249adf in QApplication::notify(QObject*, QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x166adf)
#78 0x7fd6ab68b2c3 in octave::octave_qapplication::notify(QObject*,
QEvent*) ../libgui/src/main-window.cc:2783
#79 0x7fd6a5883498 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26b498)
#80 0x7fd6a588648a in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26e48a)
#81 0x7fd6a58d5b22 (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bdb22)
#82 0x7fd6a02fac3d in g_main_context_dispatch
(/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4dc3d)
#83 0x7fd6a02faed7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4ded7)
#84 0x7fd6a02faf6b in g_main_context_iteration
(/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df6b)
#85 0x7fd6a58d5142 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bd142)
#86 0x7fd6a588216a in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26a16a)
#87 0x7fd6a56d10b5 in QThread::exec()
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xb90b5)
#88 0x7fd6a56dac86 (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xc2c86)
#89 0x7fd6a6b6d163 in start_thread
(/lib/x86_64-linux-gnu/libpthread.so.0+0x8163)
#90 0x7fd6a6cb0dee in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x11adee)
Address 0x7fd68aa523d0 is located in stack of thread T7 (QThread) at offset
432 in frame
#0 0x7fd6a9a732e1 in Array<octave_value>::index(idx_vector const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x11372e1)
This frame has 9 object(s):
[32, 40) '<unknown>'
[96, 104) 'result_dims'
[160, 168) 'dv'
[224, 232) '<unknown>'
[288, 296) 'l'
[352, 360) 'u'
[416, 456) '<unknown>' <== Memory access at offset 432 is inside this
variable
[512, 552) '<unknown>'
[608, 648) '<unknown>'
HINT: this may be a false positive if your program uses some custom stack
unwind mechanism or swapcontext
(longjmp and C++ exceptions *are* supported)
Thread T7 (QThread) created by T0 here:
#0 0x7fd6abad7e5f in __interceptor_pthread_create
(/usr/lib/x86_64-linux-gnu/libasan.so.5+0x4ae5f)
#1 0x7fd6a56da609 in QThread::start(QThread::Priority)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xc2609)
SUMMARY: AddressSanitizer: stack-use-after-scope
../liboctave/array/Array.cc:52 in
Array<octave_value>::Array(Array<octave_value> const&, dim_vector const&)
Shadow bytes around the buggy address:
0x0ffb51542420: f1 f1 00 00 00 00 f2 f2 f2 f2 00 00 00 00 f3 f3
0x0ffb51542430: f3 f3 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0ffb51542440: 00 00 00 00 f1 f1 f1 f1 00 f2 f2 f2 f2 f2 f2 f2
0x0ffb51542450: 00 f2 f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2
0x0ffb51542460: 00 f2 f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2
=>0x0ffb51542470: 00 f2 f2 f2 f2 f2 f2 f2 00 00[f8]f8 00 f2 f2 f2
0x0ffb51542480: f2 f2 f2 f2 00 00 00 00 00 f2 f2 f2 f2 f2 f2 f2
0x0ffb51542490: 00 00 00 00 00 f2 f2 f2 00 00 00 00 00 00 00 00
0x0ffb515424a0: 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1
0x0ffb515424b0: 00 f2 f2 f2 f2 f2 f2 f2 00 00 00 00 00 f2 f2 f2
0x0ffb515424c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==99948==ABORTING
#73 0x7fde37d5b243 in octave::octave_interpreter::execute()
../libgui/src/main-window.cc:146
#33 0x7f4b7f2e3857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#34 0x7f4b7f5064ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#35 0x7f4b7f5426c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#36 0x7f4b7f15d09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#37 0x7f4b7f50d6b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#38 0x7f4b7f4e3c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#39 0x7f4b7f15d09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#40 0x7f4b7f50e99f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#41 0x7f4b7f55a3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#42 0x7f4b7f50f07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#43 0x7f4b7f15dcce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#44 0x7f4b7f505689 in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:1862
#45 0x7f4b7f4e7d80 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:115
#46 0x7f4b7f50528f in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:1840
#47 0x7f4b7f557096 in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:148
#48 0x7f4b7f50e7ca in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2753
#49 0x7f4b7f55a3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#50 0x7f4b7f50f07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#51 0x7f4b7f15dcce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#52 0x7f4b7f503537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#53 0x7f4b7f2e3857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#54 0x7f4b7f5064ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#55 0x7f4b7f5426c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#56 0x7f4b7f15d09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#57 0x7f4b7f50d6b6 in
octave::tree_evaluator::visit_simple_assignment(octave::tree_simple_assignment&)
../libinterp/parse-tree/pt-eval.cc:2680
#58 0x7f4b7f4e3c3a in
octave::tree_simple_assignment::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-assign.h:84
#59 0x7f4b7f15d09a in
octave::tree_evaluator::evaluate(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:312
#60 0x7f4b7f50e99f in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:2775
#61 0x7f4b7f55a3c4 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:119
#62 0x7f4b7f50f07b in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:2844
#63 0x7f4b7f15dcce in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:194
#64 0x7f4b7f503537 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:1694
#65 0x7f4b7f2e3857 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:455
#66 0x7f4b7f5064ab in
octave::tree_evaluator::visit_index_expression(octave::tree_index_expression&)
../libinterp/parse-tree/pt-eval.cc:2007
#67 0x7f4b7f5426c4 in
octave::tree_index_expression::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-idx.h:102
#68 0x7f4b7f51f042 in
octave::tree_evaluator::evaluate_n(octave::tree_expression*, int)
../libinterp/parse-tree/pt-eval.h:343
#69 0x7f4b7f4f5147 in
octave::tree_evaluator::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/parse-tree/pt-eval.cc:242
#74 0x7fde37f326b3 in
octave::octave_interpreter::qt_static_metacall(QObject*, QMetaObject::Call,
int, void**) libgui/src/moc-main-window.cc:89
#75 0x7fde31fa8f91 in QObject::event(QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x294f91)
#76 0x7fde3293e4a0 in QApplicationPrivate::notify_helper(QObject*,
QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15f4a0)
#77 0x7fde32945adf in QApplication::notify(QObject*, QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x166adf)
#78 0x7fde37d872c3 in octave::octave_qapplication::notify(QObject*,
QEvent*) ../libgui/src/main-window.cc:2783
#79 0x7fde31f7f498 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26b498)
#80 0x7fde31f8248a in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26e48a)
#81 0x7fde31fd1b22 (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bdb22)
#82 0x7fde2c9f6c3d in g_main_context_dispatch
(/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4dc3d)
#83 0x7fde2c9f6ed7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4ded7)
#84 0x7fde2c9f6f6b in g_main_context_iteration
(/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df6b)
#85 0x7fde31fd1142 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bd142)
#86 0x7fde31f7e16a in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26a16a)
#87 0x7fde31dcd0b5 in QThread::exec()
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xb90b5)
#88 0x7fde31dd6c86 (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xc2c86)
#89 0x7fde33269163 in start_thread
(/lib/x86_64-linux-gnu/libpthread.so.0+0x8163)
#90 0x7fde333acdee in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x11adee)
Address 0x7fde1714e3d0 is located in stack of thread T7 (QThread) at offset
432 in frame
#0 0x7fde3616f2e1 in Array<octave_value>::index(idx_vector const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x11372e1)
This frame has 9 object(s):
[32, 40) '<unknown>'
[96, 104) 'result_dims'
[160, 168) 'dv'
[224, 232) '<unknown>'
[288, 296) 'l'
[352, 360) 'u'
[416, 456) '<unknown>' <== Memory access at offset 432 is inside this
variable
[512, 552) '<unknown>'
[608, 648) '<unknown>'
HINT: this may be a false positive if your program uses some custom stack
unwind mechanism or swapcontext
(longjmp and C++ exceptions *are* supported)
Thread T7 (QThread) created by T0 here:
#0 0x7fde381d3e5f in __interceptor_pthread_create
(/usr/lib/x86_64-linux-gnu/libasan.so.5+0x4ae5f)
#1 0x7fde31dd6609 in QThread::start(QThread::Priority)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xc2609)
SUMMARY: AddressSanitizer: stack-use-after-scope
../liboctave/array/Array.cc:52 in
Array<octave_value>::Array(Array<octave_value> const&, dim_vector const&)
Shadow bytes around the buggy address:
0x0ffc42e21c20: f1 f1 00 00 00 00 f2 f2 f2 f2 00 00 00 00 f3 f3
0x0ffc42e21c30: f3 f3 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0ffc42e21c40: 00 00 00 00 f1 f1 f1 f1 00 f2 f2 f2 f2 f2 f2 f2
0x0ffc42e21c50: 00 f2 f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2
0x0ffc42e21c60: 00 f2 f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2
=>0x0ffc42e21c70: 00 f2 f2 f2 f2 f2 f2 f2 00 00[f8]f8 00 f2 f2 f2
0x0ffc42e21c80: f2 f2 f2 f2 00 00 00 00 00 f2 f2 f2 f2 f2 f2 f2
0x0ffc42e21c90: 00 00 00 00 00 f2 f2 f2 00 00 00 00 00 00 00 00
0x0ffc42e21ca0: 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1
0x0ffc42e21cb0: 00 f2 f2 f2 f2 f2 f2 f2 00 00 00 00 00 f2 f2 f2
0x0ffc42e21cc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==99945==ABORTING
#70 0x7f4b7fd08410 in
octave::interpreter::eval_string(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool, int&, int)
../libinterp/corefcn/interpreter.cc:1137
#71 0x7f4b7fd03f37 in octave::interpreter::execute_eval_option_code()
../libinterp/corefcn/interpreter.cc:857
#72 0x7f4b7fd01ea5 in octave::interpreter::execute()
../libinterp/corefcn/interpreter.cc:662
make[2]: *** [Makefile:30808: doc/interpreter/griddata.txt] Error 1
make[2]: *** Waiting for unfinished jobs....
#73 0x7f4b80acc243 in octave::octave_interpreter::execute()
../libgui/src/main-window.cc:146
#74 0x7f4b80ca36b3 in
octave::octave_interpreter::qt_static_metacall(QObject*, QMetaObject::Call,
int, void**) libgui/src/moc-main-window.cc:89
#75 0x7f4b7ad19f91 in QObject::event(QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x294f91)
#76 0x7f4b7b6af4a0 in QApplicationPrivate::notify_helper(QObject*,
QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15f4a0)
#77 0x7f4b7b6b6adf in QApplication::notify(QObject*, QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x166adf)
#78 0x7f4b80af82c3 in octave::octave_qapplication::notify(QObject*,
QEvent*) ../libgui/src/main-window.cc:2783
#79 0x7f4b7acf0498 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26b498)
#80 0x7f4b7acf348a in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26e48a)
#81 0x7f4b7ad42b22 (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bdb22)
#82 0x7f4b75767c3d in g_main_context_dispatch
(/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4dc3d)
make[2]: *** [Makefile:30804: doc/interpreter/voronoi.txt] Error 1
#83 0x7f4b75767ed7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4ded7)
#84 0x7f4b75767f6b in g_main_context_iteration
(/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4df6b)
#85 0x7f4b7ad42142 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bd142)
#86 0x7f4b7acef16a in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x26a16a)
#87 0x7f4b7ab3e0b5 in QThread::exec()
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xb90b5)
#88 0x7f4b7ab47c86 (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xc2c86)
#89 0x7f4b7bfda163 in start_thread
(/lib/x86_64-linux-gnu/libpthread.so.0+0x8163)
#90 0x7f4b7c11ddee in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x11adee)
Address 0x7f4b5febf3d0 is located in stack of thread T7 (QThread) at offset
432 in frame
#0 0x7f4b7eee02e1 in Array<octave_value>::index(idx_vector const&) const
(/home/osboxes/Documents/Repositories/Octave/octave-stable/.build/libinterp/.libs/liboctinterp.so.6+0x11372e1)
This frame has 9 object(s):
[32, 40) '<unknown>'
[96, 104) 'result_dims'
[160, 168) 'dv'
[224, 232) '<unknown>'
[288, 296) 'l'
[352, 360) 'u'
[416, 456) '<unknown>' <== Memory access at offset 432 is inside this
variable
[512, 552) '<unknown>'
[608, 648) '<unknown>'
HINT: this may be a false positive if your program uses some custom stack
unwind mechanism or swapcontext
(longjmp and C++ exceptions *are* supported)
Thread T7 (QThread) created by T0 here:
#0 0x7f4b80f44e5f in __interceptor_pthread_create
(/usr/lib/x86_64-linux-gnu/libasan.so.5+0x4ae5f)
#1 0x7f4b7ab47609 in QThread::start(QThread::Priority)
(/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xc2609)
SUMMARY: AddressSanitizer: stack-use-after-scope
../liboctave/array/Array.cc:52 in
Array<octave_value>::Array(Array<octave_value> const&, dim_vector const&)
Shadow bytes around the buggy address:
0x0fe9ebfcfe20: f1 f1 00 00 00 00 f2 f2 f2 f2 00 00 00 00 f3 f3
0x0fe9ebfcfe30: f3 f3 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0fe9ebfcfe40: 00 00 00 00 f1 f1 f1 f1 00 f2 f2 f2 f2 f2 f2 f2
0x0fe9ebfcfe50: 00 f2 f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2
0x0fe9ebfcfe60: 00 f2 f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2
=>0x0fe9ebfcfe70: 00 f2 f2 f2 f2 f2 f2 f2 00 00[f8]f8 00 f2 f2 f2
0x0fe9ebfcfe80: f2 f2 f2 f2 00 00 00 00 00 f2 f2 f2 f2 f2 f2 f2
0x0fe9ebfcfe90: 00 00 00 00 00 f2 f2 f2 00 00 00 00 00 00 00 00
0x0fe9ebfcfea0: 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1
0x0fe9ebfcfeb0: 00 f2 f2 f2 f2 f2 f2 f2 00 00 00 00 00 f2 f2 f2
0x0fe9ebfcfec0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==99946==ABORTING
make[2]: *** [Makefile:30806: doc/interpreter/triplot.txt] Error 1
make[2]: Leaving directory
'/home/osboxes/Documents/Repositories/Octave/octave-stable/.build'
make[1]: *** [Makefile:27048: all-recursive] Error 1
make[1]: Leaving directory
'/home/osboxes/Documents/Repositories/Octave/octave-stable/.build'
make: *** [Makefile:10868: all] Error 2
Am I doing something wrong?
Is it necessary to compile with address-sanitizer-flags to reproduce?
@Hartmut: Does it always fail for you in octave::opengl_renderer::set_normal
with the same (or a similar) backtrace like in your comment #33?
(For a backtrace just type "bt" at the gdb prompt.)
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?48519>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Hartmut, 2019/01/01
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Pantxo Diribarne, 2019/01/02
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Hartmut, 2019/01/03
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Pantxo Diribarne, 2019/01/04
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Pantxo Diribarne, 2019/01/04
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Hartmut, 2019/01/05
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Rik, 2019/01/05
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos,
Markus Mützel <=
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Dmitri A. Sergatskov, 2019/01/05
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Dmitri A. Sergatskov, 2019/01/05
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Rik, 2019/01/05
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Dmitri A. Sergatskov, 2019/01/05
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Markus Mützel, 2019/01/06
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Dmitri A. Sergatskov, 2019/01/06
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Markus Mützel, 2019/01/06
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Rik, 2019/01/06
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Pantxo Diribarne, 2019/01/06
- [Octave-bug-tracker] [bug #48519] Segfault with Qt plotting when running demos, Hartmut, 2019/01/06