octave-maintainers
[Top][All Lists]
Advanced

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

Re: octave patch


From: John W. Eaton
Subject: Re: octave patch
Date: Sat, 26 Jan 2008 14:18:06 -0500

On 26-Jan-2008, David Bateman wrote:

| I seem to get a seg-fault on start-up with this patch. The first error
| from valgrind is
| 
| ==31994==
| ==31994== Use of uninitialised value of size 8
| ==31994==    at 0x5CAAF8C: Array<char>::index(idx_vector&, int, char
| const&) const (dim-vector.h:175)
| ==31994==    by 0x52FC06D:
| octave_char_matrix_str::do_index_op_internal(octave_value_list const&,
| bool, char) (ArrayN.h:121)
| ==31994==    by 0x5302601:
| octave_char_matrix_str::do_index_op(octave_value_list const&, bool)
| (ov-str-mat.h:91)
| ==31994==    by 0x52D2937:
| octave_base_matrix<charNDArray>::subsref(std::string const&,
| std::list<octave_value_list, std::allocator<octave_value_list> > const&)
|  (ov-base-mat.cc:47)
| ==31994==    by 0x5346B7D: octave_value::subsref(std::string const&,
| std::list<octave_value_list, std::allocator<octave_value_list> > const&,
| int) (ov.cc:931)
| ==31994==    by 0x5495001: tree_index_expression::rvalue(int)
| (pt-idx.cc:385)
| ==31994==    by 0x5496FF9: tree_index_expression::rvalue() (pt-idx.cc:396)
| ==31994==    by 0x5477BCB:
| tree_argument_list::convert_to_const_vector(octave_value const*)
| (pt-arg-list.cc:182)
| ==31994==    by 0x5290197:
| symbol_table::fcn_info::fcn_info_rep::find(tree_argument_list*,
| string_vector const&, octave_value_list&, bool&, int) (symtab.cc:448)
| ==31994==    by 0x5291526:
| symbol_table::fcn_info::find(tree_argument_list*, string_vector const&,
| octave_value_list&, bool&, int) (symtab.cc:652)
| ==31994==    by 0x5291764: symbol_table::do_find(std::string const&,
| tree_argument_list*, string_vector const&, octave_value_list&, bool&,
| int, bool) (symtab.cc:720)
| ==31994==    by 0x5292044: symbol_table::find(std::string const&,
| tree_argument_list*, string_vector const&, octave_value_list&, bool&,
| int, bool) (symtab.cc:666)
| ==31994==
| 
| Running with "octave -f" prevents the error on startup. Though with a
| few quick tests I was unable to regenerate the segfault. Removing the
| patch with
| 
| $ cd liboctave
| $ cvs diff -u -r 1.68 -r HEAD idx-vector.cc > patch
| $ cvs diff -u -r 1.54 -r HEAD idx-vector.h >> patch
| $ cat patch | patch -p0 -R
| 
| and rebuilding addresses the issue. Sorry I can't see what the issue is
| at this point.

I can't duplicate the crash.

Where does the crash occur?  Can you send a gdb traceback?

What is in your startup files?

What compiler version and options are you using?

jwe


reply via email to

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