[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: New parser and command line functions
From: |
Michael D. Godfrey |
Subject: |
Re: New parser and command line functions |
Date: |
Wed, 13 Mar 2013 17:02:13 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130219 Thunderbird/17.0.3 |
On 03/13/2013 04:56 PM, John W. Eaton wrote:
On 03/13/2013 04:52 PM, Michael D. Godfrey wrote:
On 03/13/2013 12:58 PM, John W. Eaton wrote:
On 03/13/2013 12:02 PM, Rik wrote:
3/13/13
John,
You might want to take a look at the parsing of command line
functions. I
tried this,
octave:1> function y = mysin (x)
y = sin (x);
endfunction
�: interpfcn/symtab.h:2039: static void
symbol_table::set_curr_fcn(octave_user_function*, int): Assertion
`scope !=
xtop_scope&& scope != xglobal_scope' failed.
Abort
and got thrown back to the shell.
It seems to work for me, so I'm not sure how to debug the problem.
Not that I want to invest the time, but this bug and the previous one
with
debugging, could only be caught by an interactive test suite such
as one
written with expect. Our current m-file based strategy doesn't get at
these.
The test suite used to be in expect (DejaGNU) but it was somewhat
harder to write tests than it is now. And, as I remember it, slower to
run the tests, because each one started a new Octave process. Maybe
those problems could be avoided by automatically generating the tests
for expect from the current tests we have and using some other method
of running them with expect that what we were using. But as you imply,
it would take some time to make that work...
jwe
Well, on fc18 x86 and latest devel:
octave:1> function y = mysin (x)
> y = sin (x);
> endfunction
octave: interpfcn/symtab.h:2039: static void
symbol_table::set_curr_fcn(octave_user_function*,
symbol_table::scope_id): Assertion `scope != xtop_scope && scope !=
xglobal_scope' failed.
Abort (core dumped)
[pbdsl3:octave]
So, there does seem to be a problem.
Is there more information that I could provide?
32-bit system?
No. x64. I have no 32bit systems.
GCC version?
[pbdsl3:octave] gcc --version
gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8)
Maybe I could try to reproduce on a 32-bit system.
Rik, is your OS also 32-bit?
Can you duplicate the problem when running with gdb and generate a
stack trace?
octave:1> function y = mysin (x)
> y = sin (x);
> endfunction
octave: interpfcn/symtab.h:2039: static void
symbol_table::set_curr_fcn(octave_user_function*,
symbol_table::scope_id): Assertion `scope != xtop_scope && scope !=
xglobal_scope' failed.
Program received signal SIGABRT, Aborted.
0x000000314f235ba5 in __GI_raise (address@hidden) at
../nptl/sysdeps/unix/sysv/linux/raise.c:63
63 return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
Missing separate debuginfos, use: debuginfo-install
arpack-3.0.1-3.fc18.x86_64 atlas-3.8.4-7.fc18.x86_64
blas-3.4.2-1.fc18.x86_64 expat-2.1.0-4.fc18.x86_64
fftw-libs-double-3.3.3-5.fc18.x86_64
fftw-libs-single-3.3.3-5.fc18.x86_64 fltk-1.3.0-8.fc18.x86_64
fontconfig-2.10.2-2.fc18.x86_64 freetype-2.4.10-3.fc18.x86_64
glib2-2.34.2-2.fc18.x86_64 hdf5-1.8.9-5.fc18.x86_64
keyutils-libs-1.5.5-3.fc18.x86_64 krb5-libs-1.10.3-5.fc18.x86_64
libICE-1.0.8-2.fc18.x86_64 libSM-1.2.1-2.fc18.x86_64
libX11-1.5.0-3.fc18.x86_64 libXau-1.0.6-4.fc18.x86_64
libXcursor-1.1.13-2.fc18.x86_64 libXdamage-1.1.3-4.fc18.x86_64
libXext-1.3.1-2.fc18.x86_64 libXfixes-5.0-3.fc18.x86_64
libXft-2.3.1-2.fc18.x86_64 libXi-1.6.2-1.fc18.x86_64
libXinerama-1.1.2-2.fc18.x86_64 libXrandr-1.4.0-1.fc18.x86_64
libXrender-0.9.7-2.fc18.x86_64 libXxf86vm-1.1.2-2.fc18.x86_64
libcom_err-1.42.5-1.fc18.x86_64 libdrm-2.4.42-1.fc18.x86_64
libffi-3.0.10-3.fc18.x86_64 libpng-1.5.13-1.fc18.x86_64
libselinux-2.1.12-7.1.fc18.x86_64 libuuid-2.22.2-6.fc18.x86_64
libxcb-1.9-1.fc18.x86_64 mesa-libGL-9.0.3-1.fc18.x86_64
mesa-libGLU-9.0.0-1.fc18.x86_64 mesa-libglapi-9.0.3-1.fc18.x86_64
ncurses-libs-5.9-7.20121017.fc18.x86_64
openssl-libs-1.0.1e-3.fc18.x86_64 pcre-8.31-4.fc18.x86_64
qrupdate-1.1.2-2.fc18.x86_64 qscintilla-2.6.2-3.fc18.x86_64
qt-4.8.4-14.fc18.x86_64 qt-x11-4.8.4-14.fc18.x86_64
readline-6.2-5.fc18.x86_64 suitesparse-3.6.1-4.fc18.x86_64
zlib-1.2.7-9.fc18.x86_64
(gdb) bt
#0 0x000000314f235ba5 in __GI_raise (address@hidden) at
../nptl/sysdeps/unix/sysv/linux/raise.c:63
#1 0x000000314f237358 in __GI_abort () at abort.c:90
#2 0x000000314f22e972 in __assert_fail_base (fmt=0x314f3793e8
"%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
address@hidden "scope != xtop_scope &&
scope != xglobal_scope",
address@hidden "interpfcn/symtab.h",
address@hidden, address@hidden
0x7ffff7661bc0 <symbol_table::set_curr_fcn(octave_user_function*,
int)::__PRETTY_FUNCTION__> "static void
symbol_table::set_curr_fcn(octave_user_function*,
symbol_table::scope_id)") at assert.c:92
#3 0x000000314f22ea22 in __GI___assert_fail (assertion=
0x7ffff7661938 "scope != xtop_scope && scope != xglobal_scope", file=
0x7ffff765e79c "interpfcn/symtab.h", line=2039, function=
0x7ffff7661bc0 <symbol_table::set_curr_fcn(octave_user_function*,
int)::__PRETTY_FUNCTION__> "static void
symbol_table::set_curr_fcn(octave_user_function*,
symbol_table::scope_id)") at assert.c:101
#4 0x00007ffff6a6f6b7 in symbol_table::set_curr_fcn
(address@hidden, address@hidden)
at interpfcn/symtab.h:2039
#5 0x00007ffff6a6b366 in octave_user_function::octave_user_function
(this=0x79fe30, sid=1, pl=0xa8fdd0, rl=
0x0, cl=0xa7f520) at octave-value/ov-usr-fcn.cc:205
#6 0x00007ffff6afb27f in octave_base_parser::start_function
(address@hidden, param_list=
0xa8fdd0, body=0xa7f520, end_fcn_stmt=<optimized out>) at
parse-tree/oct-parse.yy:2571
#7 0x00007ffff6b029fc in octave_push_parse (address@hidden,
yypushed_char=301,
address@hidden, parser=...) at
parse-tree/oct-parse.yy:1172
#8 0x00007ffff6b039f7 in octave_pull_parse (yyps=0x0, parser=...) at
parse-tree/oct-parse.cc:2128
#9 0x00007ffff6dfd0a7 in main_loop () at interpfcn/toplev.cc:581
#10 0x00007ffff66c23dd in octave_execute_interpreter () at octave.cc:1009
#11 0x000000314f221a05 in __libc_start_main (main=0x400b90 <main(int,
char**)>, argc=2, ubp_av=
0x7fffffffde68, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=
0x7fffffffde58) at libc-start.c:225
#12 0x0000000000400c31 in _start ()
(gdb)
jwe
- New parser and command line functions, Rik, 2013/03/13
- Re: New parser and command line functions, John W. Eaton, 2013/03/13
- Re: New parser and command line functions, Michael D. Godfrey, 2013/03/13
- Re: New parser and command line functions, John W. Eaton, 2013/03/13
- Re: New parser and command line functions,
Michael D. Godfrey <=
- Re: New parser and command line functions, John W. Eaton, 2013/03/13
- Re: New parser and command line functions, Rik, 2013/03/13
- Re: New parser and command line functions, John W. Eaton, 2013/03/15
- Re: New parser and command line functions, Michael D. Godfrey, 2013/03/15
- Re: New parser and command line functions, Rik, 2013/03/15
- Re: New parser and command line functions, John W. Eaton, 2013/03/15
- Re: New parser and command line functions, Rik, 2013/03/15
- Re: New parser and command line functions, John W. Eaton, 2013/03/15
- Re: New parser and command line functions, Rik, 2013/03/15
- Re: New parser and command line functions, John W. Eaton, 2013/03/16