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

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

[Octave-bug-tracker] [bug #65470] (instrument-control) ASAN crash during


From: Dmitri A. Sergatskov
Subject: [Octave-bug-tracker] [bug #65470] (instrument-control) ASAN crash during "test readline"
Date: Sat, 16 Mar 2024 23:34:39 -0400 (EDT)

Follow-up Comment #1, bug #65470 (group octave):

Similarly, "test writeread" crashes:

octave:8> test writeread verbose
>>>>>
/home/dima/.local/share/octave/api-v59/packages/instrument-control-0.9.2/writeread.m
***** error writeread
***** error writeread (1)
***** test
 a = udp ();
 a.remoteport = a.localport;
 a.remotehost = '127.0.0.1';
 a.timeout = 1;

 data = writeread(a, "hello");
 assert(data, "hello");
 clear a
=================================================================
==412800==ERROR: AddressSanitizer: memcpy-param-overlap: memory ranges
[0x619001444780,0x619001444785) and [0x619001444781, 0x619001444786) overlap
    #0 0x7f6675a49a4f in __interceptor_memcpy (/lib64/libasan.so.8+0x49a4f)
    #1 0x7f6550d7ffbc in octave_udp::read(unsigned char*, unsigned int,
double) /tmp/oct-fQEWdu/instrument-control-0.9.2/src/udp/udp_class.cc:427
    #2 0x7f6550d75566 in Fudp_read(octave_value_list const&, int)
/tmp/oct-fQEWdu/instrument-control-0.9.2/src/udp/udp_read.cc:99
    #3 0x7f667330d693 in
octave::tree_evaluator::execute_builtin_function(octave_builtin&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3464
    #4 0x7f6672f1aeab in octave_builtin::execute(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:49
    #5 0x7f66730039cc in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:63
    #6 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #7 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #8 0x7f66732d734d in
octave::tree_simple_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:101
    #9 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #10 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #11 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #12 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #13 0x7f6673314b8e in
octave::tree_evaluator::visit_while_command(octave::tree_while_command&)
../libinterp/parse-tree/pt-eval.cc:4400
    #14 0x7f6673366e36 in
octave::tree_while_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-loop.h:83
    #15 0x7f66733117cb in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3962
    #16 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #17 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #18 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #19 0x7f667330f8d2 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3713
    #20 0x7f66730dd72d in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:494
    #21 0x7f66730dd5d0 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:487
    #22 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #23 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #24 0x7f66732d734d in
octave::tree_simple_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:101
    #25 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #26 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #27 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #28 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #29 0x7f6673310d1c in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3835
    #30 0x7f6673328032 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:111
    #31 0x7f6673310935 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3813
    #32 0x7f667337416a in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:141
    #33 0x7f66733117cb in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3962
    #34 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #35 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #36 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #37 0x7f667330f8d2 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3713
    #38 0x7f66730dd72d in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:494
    #39 0x7f66730dd5d0 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:487
    #40 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #41 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #42 0x7f66732d734d in
octave::tree_simple_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:101
    #43 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #44 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #45 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #46 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #47 0x7f667330f8d2 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3713
    #48 0x7f66730dd72d in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:494
    #49 0x7f66730dd5d0 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:487
    #50 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #51 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #52 0x7f66732d734d in
octave::tree_simple_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:101
    #53 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #54 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #55 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #56 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #57 0x7f667330f8d2 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3713
    #58 0x7f66730dd72d in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:494
    #59 0x7f66730dd5d0 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:487
    #60 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #61 0x7f66732f902f 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:1062
    #62 0x7f66732f9bae 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:1124
    #63 0x7f6673bd3090 in
octave::interpreter::eval(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int)
../libinterp/corefcn/interpreter.cc:1521
    #64 0x7f6673297af5 in octave::Feval(octave::interpreter&,
octave_value_list const&, int) ../libinterp/parse-tree/oct-parse.yy:6525
    #65 0x7f667330d7ad in
octave::tree_evaluator::execute_builtin_function(octave_builtin&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3469
    #66 0x7f6672f1aeab in octave_builtin::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:49
    #67 0x7f66730039cc in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:63
    #68 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #69 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #70 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #71 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #72 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #73 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #74 0x7f66733130ba in
octave::tree_evaluator::visit_try_catch_command(octave::tree_try_catch_command&)
../libinterp/parse-tree/pt-eval.cc:4187
    #75 0x7f6673350cda in
octave::tree_try_catch_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:80
    #76 0x7f66733117cb in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3962
    #77 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #78 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #79 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #80 0x7f6673310d1c in
octave::tree_evaluator::visit_if_command_list(octave::tree_if_command_list&)
../libinterp/parse-tree/pt-eval.cc:3835
    #81 0x7f6673328032 in
octave::tree_if_command_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:111
    #82 0x7f6673310935 in
octave::tree_evaluator::visit_if_command(octave::tree_if_command&)
../libinterp/parse-tree/pt-eval.cc:3813
    #83 0x7f667337416a in
octave::tree_if_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-select.h:141
    #84 0x7f66733117cb in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3962
    #85 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #86 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #87 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #88 0x7f6673314682 in
octave::tree_evaluator::visit_unwind_protect_command(octave::tree_unwind_protect_command&)
../libinterp/parse-tree/pt-eval.cc:4332
    #89 0x7f6673350d4e in
octave::tree_unwind_protect_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-except.h:142
    #90 0x7f66733117cb in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3962
    #91 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #92 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #93 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #94 0x7f667332c308 in void
octave::tree_evaluator::execute_range_loop<double>(octave::range<double, void>
const&, int, octave::octave_lvalue&, octave::tree_statement_list*)
(/usr/local/lib/octave/9.1.1/liboctinterp.so.12+0x172c308)
    #95 0x7f667330a22a in
octave::tree_evaluator::visit_simple_for_command(octave::tree_simple_for_command&)
../libinterp/parse-tree/pt-eval.cc:3173
    #96 0x7f6673366eaa in
octave::tree_simple_for_command::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-loop.h:179
    #97 0x7f66733117cb in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3962
    #98 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #99 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #100 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #101 0x7f667330f8d2 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3713
    #102 0x7f66730dd72d in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:494
    #103 0x7f66730dd5d0 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:487
    #104 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #105 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #106 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #107 0x7f667337733e in
octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #108 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #109 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #110 0x7f66732f89c9 in
octave::tree_evaluator::eval(std::shared_ptr<octave::tree_statement_list>&,
bool) ../libinterp/parse-tree/pt-eval.cc:994
    #111 0x7f66732f76f6 in octave::tree_evaluator::repl()
../libinterp/parse-tree/pt-eval.cc:811
    #112 0x7f6673bd1e4e in octave::interpreter::main_loop()
../libinterp/corefcn/interpreter.cc:1337
    #113 0x7f6673bc4e79 in octave::interpreter::execute()
../libinterp/corefcn/interpreter.cc:898
    #114 0x7f6675151d28 in octave::interpreter_qobject::execute()
../libgui/src/interpreter-qobject.cc:87
    #115 0x7f66752a705b in QtPrivate::FunctorCall<QtPrivate::IndexesList<>,
QtPrivate::List<>, void, void (octave::interpreter_qobject::*)()>::call(void
(octave::interpreter_qobject::*)(), octave::interpreter_qobject*, void**)
/usr/include/qt6/QtCore/qobjectdefs_impl.h:135
    #116 0x7f66752a59c5 in void QtPrivate::FunctionPointer<void
(octave::interpreter_qobject::*)()>::call<QtPrivate::List<>, void>(void
(octave::interpreter_qobject::*)(), octave::interpreter_qobject*, void**)
/usr/include/qt6/QtCore/qobjectdefs_impl.h:172
    #117 0x7f66752a3e77 in QtPrivate::QSlotObject<void
(octave::interpreter_qobject::*)(), QtPrivate::List<>, void>::impl(int,
QtPrivate::QSlotObjectBase*, QObject*, void**, bool*)
/usr/include/qt6/QtCore/qobjectdefs_impl.h:384
    #118 0x7f66701c09ef in QObject::event(QEvent*)
(/lib64/libQt6Core.so.6+0x1c09ef)
    #119 0x7f66713c17b5 in QApplicationPrivate::notify_helper(QObject*,
QEvent*) (/lib64/libQt6Widgets.so.6+0x1c17b5)
    #120 0x7f667528824f in octave::octave_qapplication::notify(QObject*,
QEvent*) ../libgui/src/octave-qobject.cc:148
    #121 0x7f667016dbe7 in QCoreApplication::notifyInternal2(QObject*,
QEvent*) ../src/corelib/kernel/qcoreapplication.cpp:1118
    #122 0x7f6670171327 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) ../src/corelib/kernel/qcoreapplication.cpp:1898
    #123 0x7f66703fd586 in postEventSourceDispatch
../src/corelib/kernel/qeventdispatcher_glib.cpp:243
    #124 0x7f666c6c3e3e in g_main_context_dispatch
(/lib64/libglib-2.0.so.0+0x54e3e)
    #125 0x7f666c718ec7 in g_main_context_iterate.constprop.0
(/lib64/libglib-2.0.so.0+0xa9ec7)
    #126 0x7f666c6c177f in g_main_context_iteration
(/lib64/libglib-2.0.so.0+0x5277f)
    #127 0x7f66703fcd5d in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(/lib64/libQt6Core.so.6+0x3fcd5d)
    #128 0x7f667017a192 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(/lib64/libQt6Core.so.6+0x17a192)
    #129 0x7f6670293c35 in QThread::exec() (/lib64/libQt6Core.so.6+0x293c35)
    #130 0x7f66702e8c66 in
terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >
../src/corelib/thread/qthread_unix.cpp:321
    #131 0x7f66702e8c66 in QThreadPrivate::start(void*)
../src/corelib/thread/qthread_unix.cpp:280
    #132 0x7f666c08d3bd in start_thread (/lib64/libc.so.6+0x8d3bd)
    #133 0x7f666c112def in __GI___clone3 (/lib64/libc.so.6+0x112def)

0x619001444780 is located 0 bytes inside of 1024-byte region
[0x619001444780,0x619001444b80)
allocated by thread T8 (QThread) here:
    #0 0x7f6675abb298 in operator new[](unsigned long)
(/lib64/libasan.so.8+0xbb298)
    #1 0x7f6550d7e606 in octave_udp::open(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int, int)
/tmp/oct-fQEWdu/instrument-control-0.9.2/src/udp/udp_class.cc:236
    #2 0x7f6550d6e847 in Fudp(octave_value_list const&, int)
/tmp/oct-fQEWdu/instrument-control-0.9.2/src/udp/udp.cc:180
    #3 0x7f667330d693 in
octave::tree_evaluator::execute_builtin_function(octave_builtin&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3464
    #4 0x7f6672f1aeab in octave_builtin::execute(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:49
    #5 0x7f66730039cc in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:63
    #6 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #7 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #8 0x7f66732d734d in
octave::tree_simple_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:101
    #9 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #10 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #11 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #12 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #13 0x7f667330f8d2 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3713
    #14 0x7f66730dd72d in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:494
    #15 0x7f66730dd5d0 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:487
    #16 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #17 0x7f66732f902f 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:1062
    #18 0x7f66732f9bae 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:1124
    #19 0x7f6673bd3090 in
octave::interpreter::eval(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int)
../libinterp/corefcn/interpreter.cc:1521
    #20 0x7f6673297af5 in octave::Feval(octave::interpreter&,
octave_value_list const&, int) ../libinterp/parse-tree/oct-parse.yy:6525
    #21 0x7f667330d7ad in
octave::tree_evaluator::execute_builtin_function(octave_builtin&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3469
    #22 0x7f6672f1aeab in octave_builtin::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:49
    #23 0x7f66730039cc in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:63
    #24 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #25 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #26 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #27 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #28 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #29 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193

Thread T8 (QThread) created by T0 here:
    #0 0x7f6675a4b276 in __interceptor_pthread_create
(/lib64/libasan.so.8+0x4b276)
    #1 0x7f66702e8654 in QThread::start(QThread::Priority)
(/lib64/libQt6Core.so.6+0x2e8654)

0x619001444781 is located 1 bytes inside of 1024-byte region
[0x619001444780,0x619001444b80)
allocated by thread T8 (QThread) here:
    #0 0x7f6675abb298 in operator new[](unsigned long)
(/lib64/libasan.so.8+0xbb298)
    #1 0x7f6550d7e606 in octave_udp::open(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int, int)
/tmp/oct-fQEWdu/instrument-control-0.9.2/src/udp/udp_class.cc:236
    #2 0x7f6550d6e847 in Fudp(octave_value_list const&, int)
/tmp/oct-fQEWdu/instrument-control-0.9.2/src/udp/udp.cc:180
    #3 0x7f667330d693 in
octave::tree_evaluator::execute_builtin_function(octave_builtin&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3464
    #4 0x7f6672f1aeab in octave_builtin::execute(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:49
    #5 0x7f66730039cc in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:63
    #6 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #7 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #8 0x7f66732d734d in
octave::tree_simple_assignment::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-assign.cc:101
    #9 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #10 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #11 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #12 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193
    #13 0x7f667330f8d2 in
octave::tree_evaluator::execute_user_function(octave_user_function&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3713
    #14 0x7f66730dd72d in
octave_user_function::execute(octave::tree_evaluator&, int, octave_value_list
const&) ../libinterp/octave-value/ov-usr-fcn.cc:494
    #15 0x7f66730dd5d0 in octave_user_function::call(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-usr-fcn.cc:487
    #16 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #17 0x7f66732f902f 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:1062
    #18 0x7f66732f9bae 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:1124
    #19 0x7f6673bd3090 in
octave::interpreter::eval(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int)
../libinterp/corefcn/interpreter.cc:1521
    #20 0x7f6673297af5 in octave::Feval(octave::interpreter&,
octave_value_list const&, int) ../libinterp/parse-tree/oct-parse.yy:6525
    #21 0x7f667330d7ad in
octave::tree_evaluator::execute_builtin_function(octave_builtin&, int,
octave_value_list const&) ../libinterp/parse-tree/pt-eval.cc:3469
    #22 0x7f6672f1aeab in octave_builtin::execute(octave::tree_evaluator&,
int, octave_value_list const&) ../libinterp/octave-value/ov-builtin.cc:49
    #23 0x7f66730039cc in octave_function::call(octave::tree_evaluator&, int,
octave_value_list const&) ../libinterp/octave-value/ov-fcn.cc:63
    #24 0x7f667335a13c in
octave::tree_index_expression::evaluate_n(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.cc:427
    #25 0x7f667335f4b2 in
octave::tree_index_expression::evaluate(octave::tree_evaluator&, int)
../libinterp/parse-tree/pt-idx.h:104
    #26 0x7f6673311a29 in
octave::tree_evaluator::visit_statement(octave::tree_statement&)
../libinterp/parse-tree/pt-eval.cc:3987
    #27 0x7f667337733e in octave::tree_statement::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:120
    #28 0x7f6673312524 in
octave::tree_evaluator::visit_statement_list(octave::tree_statement_list&)
../libinterp/parse-tree/pt-eval.cc:4072
    #29 0x7f6672e59bac in
octave::tree_statement_list::accept(octave::tree_walker&)
../libinterp/parse-tree/pt-stmt.h:193

SUMMARY: AddressSanitizer: memcpy-param-overlap (/lib64/libasan.so.8+0x49a4f)
in __interceptor_memcpy
==412800==ABORTING


Dmitri.
-- 




    _______________________________________________________

Reply to this item at:

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

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




reply via email to

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