From octave-maintainers-request at bevo dot che dot wisc dot edu Fri May 15 16:26:13 1998 Subject: Question From: Chuck Robey To: octave-maintainers at bevo dot che dot wisc dot edu Date: Fri, 15 May 1998 16:24:00 -0400 (EDT) I just got around to actually running a new octave script on my newly ported 2.0.12, and I saw it was core-dumping on startup. The specific point it core-dumps (with a bus error) on is in the GNU stdc++ header file bastring.h, line 69: charT* data () { return reinterpret_cast(this + 1); } charT& operator[] (size_t s) { return data () [s]; } charT* grab () { if (selfish) return clone (); ++ref; return data (); } void release () { if (--ref == 0) delete this; } <== HERE inline static void * operator new (size_t, size_t); inline static Rep* create (size_t); This seems to me to be kicked off from octave.cc line 414, where: initialize_error_handlers (); initialize_globals (argv[0]); <== HERE initialize_pathsearch (); initialize_globals is supposed to be called with a string class argument, not just any string, isn't it? You're casting argv[0] as a class string, but it's a simple C string, right? I'm not totally at home with c++, so I can't be trusted on this, but it seems you want a constructor here ... I did check, and argv[0] is a pointer to a good full octave path. I can and will perform any tests you can imagine, and would in fact be pleased to work off any guesses you can come up with. The platform is FreeBSD-current, using gcc 2.7.2.1. ----------------------------+----------------------------------------------- Chuck Robey | Interests include any kind of voice or data chuckr at glue dot umd dot edu| | communications topic, C programming, and Unix. 213 Lakeside Drive Apt T-1 | Greenbelt, MD 20770 | I run Journey2 and picnic (FreeBSD-current) (301) 220-2114 | and jaunt (NetBSD). ----------------------------+-----------------------------------------------