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

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

[Octave-bug-tracker] [bug #61911] testsuite segfaults on Debian armel


From: Dmitri A. Sergatskov
Subject: [Octave-bug-tracker] [bug #61911] testsuite segfaults on Debian armel
Date: Fri, 25 Mar 2022 15:59:59 -0400 (EDT)

Follow-up Comment #21, bug #61911 (project octave):

I tried to build hg id 5fa3d8f0dcb3 (stable) on
sid chroot armel (with debugs and asan flags)

First it failed building docs:


make[2]: Entering directory '/usr/local/src/octave/gcc_asan'
rm -f doc/interpreter/plot-legendproperties.texi-t
doc/interpreter/plot-legendproperties.texi && /bin/bash run-octave
-disable-asan --norc --silent --no-history --path ../doc/interpreter --eval
"genpropdoc ('legend');" > doc/interpreter/plot-legendproperties.texi-t && mv
doc/interpreter/plot-legendproperties.texi-t
doc/interpreter/plot-legendproperties.texi
/usr/local/src/octave/gcc_asan/libtool: line 4739: warning: setlocale:
LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory
/usr/local/src/octave/gcc_asan/libtool: line 4739: warning: setlocale:
LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory
/usr/local/src/octave/gcc_asan/libtool: line 4739: warning: setlocale:
LC_MESSAGES: cannot change locale (en_US.UTF-8): No such file or directory
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
make[2]: *** [Makefile:31037: doc/interpreter/plot-legendproperties.texi]
Error 1
make[2]: Leaving directory '/usr/local/src/octave/gcc_asan'
make[1]: *** [Makefile:27443: all-recursive] Error 1
make[1]: Leaving directory '/usr/local/src/octave/gcc_asan'
make: *** [Makefile:10848: all] Error 2


Then it  fails during make check:


make[4]: Entering directory '/usr/local/src/octave/gcc_asan/test'
  GEN      mex/.octave-dirstamp
  MKMEXFILE      mex/bug_54096.mex
  MKMEXFILE      mex/bug_51725.mex
  MKMEXFILE      mex/mexnumtst.mex
/usr/local/src/octave/gcc_asan/libtool: line 4739: warning: setlocale:
LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory
/usr/local/src/octave/gcc_asan/libtool: line 4739: warning: setlocale:
LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory
/usr/local/src/octave/gcc_asan/libtool: line 4739: warning: setlocale:
LC_MESSAGES: cannot change locale (en_US.UTF-8): No such file or directory

Integrated test scripts:

  liboctave/array/Array.cc-tst
...................................=================================================================
==377012==ERROR: AddressSanitizer: stack-use-after-scope on address 0xffc092b4
at pc 0xf74ef6bc bp 0xffc0928c sp 0xffc08e60
WRITE of size 12 at 0xffc092b4 thread T0
    #0 0xf74ef6b8 in __interceptor_sigaltstack
../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:9986
    #1 0xf7555548 in __asan::PlatformUnpoisonStacks()
../../../../src/libsanitizer/asan/asan_posix.cpp:44
    #2 0xf755aa84 in __asan_handle_no_return
../../../../src/libsanitizer/asan/asan_rtl.cpp:612
    #3 0xf5f6dcb8 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3842
    #4 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #5 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #6 0xf5936334 in octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #7 0xf5f6a9c8 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
    #8 0xf5c7fc74 in octave_user_function::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
    #9 0xf5c7fae4 in octave_user_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
    #10 0xf5fd7ebc in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
    #11 0xf5f51f28 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:1052
    #12 0xf5f52c78 in
octave::tree_evaluator::eval(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int)
../libinterp/parse-tree/pt-eval.cc:1111
    #13 0xf69b5c50 in
octave::interpreter::eval(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int)
../libinterp/corefcn/interpreter.cc:1502
    #14 0xf5ec42a4 in octave::Feval(octave::interpreter&, octave_value_list
const&, int) ../libinterp/parse-tree/oct-parse.yy:6432
    #15 0xf5a2c8b0 in octave_builtin::execute(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:65
    #16 0xf5b4afcc in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:57
    #17 0xf5fd7ebc in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
    #18 0xf5fdf2e0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
    #19 0xf5f6d330 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
    #20 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #21 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #22 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #23 0xf5f6f100 in
octave::tree_evaluator::visit_try_catch_command(octave::tree_try_catch_command&)
../libinterp/parse-tree/pt-eval.cc:3981
    #24 0xf5fbf0b8 in
octave::tree_try_catch_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:84
    #25 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #26 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #27 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #28 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #29 0xf5f6c03c in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
    #30 0xf5f8ad14 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
    #31 0xf5f6baa4 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
    #32 0xf5ffd16c in octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
    #33 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #34 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #35 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #36 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #37 0xf5f6c03c in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
    #38 0xf5f8ad14 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
    #39 0xf5f6baa4 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
    #40 0xf5ffd16c in octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
    #41 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #42 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #43 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #44 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #45 0xf5f70aa0 in
octave::tree_evaluator::visit_unwind_protect_command(octave::tree_unwind_protect_command&)
../libinterp/parse-tree/pt-eval.cc:4126
    #46 0xf5fbf1b4 in
octave::tree_unwind_protect_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:151
    #47 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #48 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #49 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #50 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #51 0xf5f8f2a4 in void
octave::tree_evaluator::execute_range_loop<double>(octave::range<double, void>
const&, int, octave::octave_lvalue&, octave::tree_statement_list*)
../libinterp/parse-tree/pt-eval.cc:3048
    #52 0xf5f667c8 in
octave::tree_evaluator::visit_simple_for_command(octave::tree_simple_for_command&)
../libinterp/parse-tree/pt-eval.cc:3095
    #53 0xf5fea414 in
octave::tree_simple_for_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-loop.h:191
    #54 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #55 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #56 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #57 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #58 0xf5f6a9c8 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
    #59 0xf5c7fc74 in octave_user_function::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
    #60 0xf5c7fae4 in octave_user_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
    #61 0xf5fd7ebc in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
    #62 0xf5f21f00 in
octave::tree_multi_assignment::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:201
    #63 0xf5f26bf0 in
octave::tree_multi_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.h:156
    #64 0xf5f6d330 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
    #65 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #66 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #67 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #68 0xf5f6c03c in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
    #69 0xf5f8ad14 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
    #70 0xf5f6baa4 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
    #71 0xf5ffd16c in octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
    #72 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #73 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #74 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #75 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #76 0xf5f6c03c in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
    #77 0xf5f8ad14 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
    #78 0xf5f6baa4 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
    #79 0xf5ffd16c in octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
    #80 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #81 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #82 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #83 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #84 0xf5f8f2a4 in void
octave::tree_evaluator::execute_range_loop<double>(octave::range<double, void>
const&, int, octave::octave_lvalue&, octave::tree_statement_list*)
../libinterp/parse-tree/pt-eval.cc:3048
    #85 0xf5f667c8 in
octave::tree_evaluator::visit_simple_for_command(octave::tree_simple_for_command&)
../libinterp/parse-tree/pt-eval.cc:3095
    #86 0xf5fea414 in
octave::tree_simple_for_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-loop.h:191
    #87 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #88 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #89 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #90 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #91 0xf5f70aa0 in
octave::tree_evaluator::visit_unwind_protect_command(octave::tree_unwind_protect_command&)
../libinterp/parse-tree/pt-eval.cc:4126
    #92 0xf5fbf1b4 in
octave::tree_unwind_protect_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:151
    #93 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #94 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #95 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #96 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #97 0xf5f6a9c8 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
    #98 0xf5c7fc74 in octave_user_function::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
    #99 0xf5c7fae4 in octave_user_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
    #100 0xf5fd7ebc in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
    #101 0xf5f21f00 in
octave::tree_multi_assignment::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:201
    #102 0xf5f26bf0 in
octave::tree_multi_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.h:156
    #103 0xf5f6d330 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
    #104 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #105 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #106 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #107 0xf5f6c03c in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3629
    #108 0xf5f8ad14 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:118
    #109 0xf5f6baa4 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3607
    #110 0xf5ffd16c in octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:151
    #111 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #112 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #113 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #114 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #115 0xf5f8f2a4 in void
octave::tree_evaluator::execute_range_loop<double>(octave::range<double, void>
const&, int, octave::octave_lvalue&, octave::tree_statement_list*)
../libinterp/parse-tree/pt-eval.cc:3048
    #116 0xf5f667c8 in
octave::tree_evaluator::visit_simple_for_command(octave::tree_simple_for_command&)
../libinterp/parse-tree/pt-eval.cc:3095
    #117 0xf5fea414 in
octave::tree_simple_for_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-loop.h:191
    #118 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #119 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #120 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #121 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #122 0xf5f6a9c8 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
    #123 0xf5c7fc74 in octave_user_function::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
    #124 0xf5c7fae4 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
    #125 0xf5fd7ebc in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
    #126 0xf5f21f00 in
octave::tree_multi_assignment::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:201
    #127 0xf5f26bf0 in
octave::tree_multi_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.h:156
    #128 0xf5f6d330 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
    #129 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #130 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #131 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #132 0xf5f8f2a4 in void
octave::tree_evaluator::execute_range_loop<double>(octave::range<double, void>
const&, int, octave::octave_lvalue&, octave::tree_statement_list*)
../libinterp/parse-tree/pt-eval.cc:3048
    #133 0xf5f667c8 in
octave::tree_evaluator::visit_simple_for_command(octave::tree_simple_for_command&)
../libinterp/parse-tree/pt-eval.cc:3095
    #134 0xf5fea414 in
octave::tree_simple_for_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-loop.h:191
    #135 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #136 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #137 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #138 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #139 0xf5f6f100 in
octave::tree_evaluator::visit_try_catch_command(octave::tree_try_catch_command&)
../libinterp/parse-tree/pt-eval.cc:3981
    #140 0xf5fbf0b8 in
octave::tree_try_catch_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:84
    #141 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #142 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #143 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #144 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #145 0xf5f70aa0 in
octave::tree_evaluator::visit_unwind_protect_command(octave::tree_unwind_protect_command&)
../libinterp/parse-tree/pt-eval.cc:4126
    #146 0xf5fbf1b4 in
octave::tree_unwind_protect_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:151
    #147 0xf5f6cf90 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3756
    #148 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #149 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #150 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #151 0xf5f6a9c8 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3512
    #152 0xf5c7fc74 in octave_user_function::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:495
    #153 0xf5c7fae4 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:488
    #154 0xf5fd7ebc in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:408
    #155 0xf5fdf2e0 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:108
    #156 0xf5f6d330 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3781
    #157 0xf6001a68 in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:124
    #158 0xf5f6e1a4 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:3866
    #159 0xf5936334 in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:201
    #160 0xf5f68d18 in
octave::tree_evaluator::execute_user_script(octave_user_script&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3366
    #161 0xf5c7a7c4 in octave_user_script::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:196
    #162 0xf5c7a64c in octave_user_script::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:189
    #163 0xf5f5db50 in
octave::tree_evaluator::source_file(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>
> const&, bool, bool) ../libinterp/parse-tree/pt-eval.cc:2190
    #164 0xf69b77bc in
octave::interpreter::source_file(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>
> const&, bool, bool) ../libinterp/corefcn/interpreter.cc:1700
    #165 0xf5ec217c in octave::source_file(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>
> const&, bool, bool) ../libinterp/parse-tree/oct-parse.yy:6195
    #166 0xf699f064 in safe_source_file
../libinterp/corefcn/interpreter.cc:351
    #167 0xf69b4060 in octave::interpreter::execute_command_line_file()
../libinterp/corefcn/interpreter.cc:1333
    #168 0xf69a4e90 in octave::interpreter::execute()
../libinterp/corefcn/interpreter.cc:868
    #169 0xf4cc206c in octave::cli_application::execute()
../libinterp/octave.cc:425
    #170 0x412840 in main ../src/main-cli.cc:121
    #171 0xf223fe20 in __libc_start_main csu/libc-start.c:332

Address 0xffc092b4 is located in stack of thread T0
SUMMARY: AddressSanitizer: stack-use-after-scope
../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:9986
in __interceptor_sigaltstack
Shadow bytes around the buggy address:
  0x3ff81200: 00 00 00 00 f8 00 00 00 00 00 f8 f8 00 00 f8 f8
  0x3ff81210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x3ff81220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x3ff81230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x3ff81240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
=>0x3ff81250: f8 f8 f8 f8 f8 f8[f8]f8 00 00 00 00 00 00 00 00
  0x3ff81260: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x3ff81270: 00 00 f8 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x3ff81280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x3ff81290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x3ff812a0: 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
  Shadow gap:              cc
==377012==ABORTING
make[4]: *** [Makefile:2848: check-local] Error 1
make[4]: Leaving directory '/usr/local/src/octave/gcc_asan/test'
make[3]: *** [Makefile:2700: check-am] Error 2
make[3]: Leaving directory '/usr/local/src/octave/gcc_asan/test'
make[2]: *** [Makefile:2702: check] Error 2
make[2]: Leaving directory '/usr/local/src/octave/gcc_asan/test'
make[1]: *** [Makefile:27443: check-recursive] Error 1
make[1]: Leaving directory '/usr/local/src/octave/gcc_asan'
make: *** [Makefile:27741: check] Error 2



Dmitri.
-- 



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?61911>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

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