octave-maintainers
[Top][All Lists]
Advanced

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

Re: compiling development sources


From: John W. Eaton
Subject: Re: compiling development sources
Date: Wed, 10 Feb 2010 15:25:12 -0500

On 10-Feb-2010, Carlo de Falco wrote:

| On 10 Feb 2010, at 18:46, John W. Eaton wrote:
| 
| > OK, then try running Octave with
| >
| >  ./run-octave -g
| >
| > then at the (gdb) prompt, type "run", then at the Octave prompt, cd to
| > the src/DLD-FUNCTIONS directory and type "test lu".  That should
| > result in the same segfault and you should be able to get information
| > about where the crash happens and examine the variables in scope at
| > the time of the crash.
| >
| > jwe
| 
| running the tests manually I found where the crash is:
| 
|  >> [l, u, p] = lu ([1, 2; 3, 4]);
| Reading symbols for shared libraries . done
|  >> p
| p =
| 
| Permutation Matrix
| 
|     0   1
|     1   0
| 
|  >> assert(p(:,:), [0, 1; 1, 0], sqrt (eps));

Which of these expressions is causing the crash?  Is it the p(:,:)
part, the [0,1;1,0], sqrt(eps) or somewhere in the call to assert?  If
it is somewhere in the call to assert, then it would be helpful to
know exactly what expression inside the assert function is causing the
crash.

| Program received signal EXC_BAD_ACCESS, Could not access memory.
| Reason: KERN_INVALID_ADDRESS at address: 0x9b12d1e0
| get_dispatch_type (address@hidden, address@hidden) at  
| symtab.cc:528
| 528               btyp = sup_table[btyp][args(i).builtin_type ()];
| (gdb)

At this point, what is the value of btyp and args(i).builtin_type()?
I'd have to guess that one or both of them are out of range somehow.

The first is easy to get:

  (gdb) p btyp

The second is a little harder:

  (gdb) p args.data.rep.data[i].builtin_type()

Since gdb doesn't seem to know how to parse and evaluate the args(i)
expression, you have to help it out with that job.

jwe


reply via email to

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