I'm glad you found an underlying cause. This bug turned out to be difficult to isolate. It seems that the problem is structural in nature. It's not *only* the presence of the '', but also related to the structure of that variable.
I found that I could make the problem go away by deleting lines from the test function. Even though the remaining lines still contain '', it's the presence of *all* of those lines (or some important subset that I failed to isolate) that somehow tickles the bug. Just so you know: this bug is *not* blocking my work. On Fri, 2014-06-13 at 20:02 +0200, Juergen Sauermann wrote: > Hi David, > > thanks for preparing the testcase. > I believe I have found the reason (some well known constants like '' > are not being saved), > but I need a little longer to fix it. > > /// Jürgen > > > On 06/13/2014 05:13 AM, David Lamkins wrote: > > > Here's the smallest test case I've been able to isolate: > > > > > > ---- file: foo.apl ---- > > ⍝! > > > > ∇foo;cmd_info > > cmd_info←⍬ > > cmd_info←cmd_info, ⊂('help' '[command]' '') > > cmd_info←cmd_info, ⊂('ident' '' '') > > cmd_info←cmd_info, ⊂('packages' '' '') > > cmd_info←cmd_info, ⊂('read' 'package-name' '[document-id]') > > cmd_info←cmd_info, ⊂('depends' 'package-name' '') > > cmd_info←cmd_info, ⊂('metadata' 'package-name' '') > > cmd_info←cmd_info, ⊂('load' 'package-name' '') > > cmd_info←cmd_info, ⊂('expunge' 'package-name' '') > > cmd_info←cmd_info, ⊂('new' 'package-name' '') > > cmd_info←cmd_info, ⊂('init' 'directory' '') > > cmd_info←cmd_info, ⊂('rescan' '' '') > > cmd_info←cmd_info, ⊂('names' 'prefix' '') > > cmd_info←cmd_info, ⊂('debug' '[on|off]' '') > > ∇ > > > > ---- end file ---- > > > > > > > > In GNU APL: > > > > )load foo > > loading )DUMP file /home/dlamkins/APL/workspaces/foo.apl... > > WAS CLEAR WS > > )continue > > WAS foo > > > > ============================================================================== > > Assertion failed: sub_idx < values.size() > > in Function: save > > in file: Archive.cc:715 > > > > Call stack: > > > > ---------------------------------------- > > -- Stack trace at Archive.cc:715 > > ---------------------------------------- > > 0x7f425d252d65 __libc_start_main > > 0x435f45 main > > 0x5298dd Workspace::immediate_execution(bool) > > 0x46cc45 Command::process_line() > > 0x46cbdf Command::process_line(UCS_string&) > > 0x46c525 Command::do_APL_command(std::ostream&, UCS_string&) > > 0x469a74 Command::cmd_CONTINUE(std::ostream&) > > 0x52cbca Workspace::save_WS(std::ostream&, > > std::vector<UCS_string, std::allocator<UCS_string> >&) > > 0x44146c XML_Saving_Archive::save() > > 0x443bd1 do_Assert(char const*, char const*, char const*, > > int) > > ======================================== > > > > SI stack: > > > > > > ============================================================================== > > *** immediate_execution() caught other exception *** > > > > > > ==================================================== > > SEGMENTATION FAULT > > > > ---------------------------------------- > > -- Stack trace at main.cc:121 > > ---------------------------------------- > > 0x7f425d252d65 __libc_start_main > > 0x435f45 main > > 0x529967 Workspace::immediate_execution(bool) > > 0x5006ee TestFiles::apl_error(char const*) > > 0x7f425ef23750 > > 0x48623a > > ======================================== > > ==================================================== > > > > > > Process apl exited abnormally with code 3 > > > > > > IMPORTANT: Remember to delete CONTINUE.xml before attempting to > > restart APL. > > > > > > > > > > > > On Thu, Jun 12, 2014 at 12:17 PM, David Lamkins <da...@lamkins.net> > > wrote: > > This is a preliminary report. I haven't isolated a root > > cause. > > > > > > When my package manager is in the workspace, doing )CONTINUE > > crashes APL. Furthermore, APL can't be used (it launches, > > but never becomes ready for input) until CONTINUE.xml is > > removed. > > > > > > I'll see what I can do tonight to come up with a brief test > > case. Meanwhile, you should be able to reproduce the issue > > by installing and loading the package manager obtained from: > > > > https://github.com/TieDyedDevil/apl-pkg > > > > > > -- > > "The secret to creativity is knowing how to hide your > > sources." > > Albert Einstein > > > > > > http://soundcloud.com/davidlamkins > > http://reverbnation.com/lamkins > > http://reverbnation.com/lcw > > http://lamkins-guitar.com/ > > http://lamkins.net/ > > http://successful-lisp.com/ > > > > > > > > -- > > "The secret to creativity is knowing how to hide your sources." > > Albert Einstein > > > > > > http://soundcloud.com/davidlamkins > > http://reverbnation.com/lamkins > > http://reverbnation.com/lcw > > http://lamkins-guitar.com/ > > http://lamkins.net/ > > http://successful-lisp.com/ >