bug-apl
[Top][All Lists]
Advanced

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

[Bug-apl] APL give a "SEGMENTATION FAULT"


From: Christian Robert
Subject: [Bug-apl] APL give a "SEGMENTATION FAULT"
Date: Mon, 27 Apr 2015 20:02:30 -0400
User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0

Got some kind of limit bug. When my function '∆' is called with an undefined 
function name
it core dump. I understood why and fixed the function by addind the line #2 
(actually commented out).

Nevertheless, I report this because it abort rather than give some APL errors.

Session:

$ aplt

                    ______ _   __ __  __    ___     ____   __
                   / ____// | / // / / /   /   |   / __ \ / /
                  / / __ /  |/ // / / /   / /| |  / /_/ // /
                 / /_/ // /|  // /_/ /   / ___ | / ____// /___
                 \____//_/ |_/ \____/   /_/  |_|/_/    /_____/

                     Welcome to GNU APL version 1.5 / 616

                Copyright (C) 2008-2015  Dr. Jürgen Sauermann
                       Banner by FIGlet: www.figlet.org

                This program comes with ABSOLUTELY NO WARRANTY;
                  for details run: /usr/local/bin/apl --gpl.

     This program is free software, and you are welcome to redistribute it
         according to the GNU Public License (GPL) version 3 or later.

      )load Bug
loading )DUMP file /home/xtian/workspaces/Bug.apl...
WAS CLEAR WS
      ∆ '∆'
   ∇z←∆ name;w
[1] z←⎕cr name                 ⍝ Function name to display
[2] ⍝ →(0=×/⍴z)/0                ⍝ nothing to display or bad 'name'
[3] w←1+⌊10⍟↑⍴z                ⍝ num of digits for max number of lines
[4] z←'[',((w,0)⍕((↑⍴z)1)⍴(¯1+⍳↑⍴z)),[2]']',' ',z
[5] z[1;⍳w+3]←(-w+3)↑'∇'       ⍝ function definition
[6] z←z,[1](¯1↑⍴z)↑(-w+3)↑'∇'  ⍝ add last line
[7] z←z⍪' '                    ⍝ and a final blank line
   ∇



      ∆ 'xxx'                  ⍝ xxx is an unknown function name


====================================================
SEGMENTATION FAULT
thread: 0x7f45c6f37780
thread_contexts_count: 1
busy_worker_count:     0
active_core_count:     1
thread # 0:  0x7f45c6f37780 pool sema:  0 RUN  job:   0 no-name


----------------------------------------
-- Stack trace at main.cc:69
----------------------------------------
0x3648821d65 __libc_start_main
0x443e25  main
0x5565bd   Workspace::immediate_execution(bool)
0x487862    Command::process_line()
0x4878da     Command::do_APL_expression(UCS_string&)
0x491c85      Executable::execute_body() const
0x510020       StateIndicator::run()
0x4c18f9        Prefix::reduce_statements()
0x4bd502         Prefix::reduce_A_F_B_()
0x4d2758          Bif_F12_TAKE::eval_AB(Value_P, Value_P)
0x364900f6d0
0x448eb2
========================================
====================================================

Goodbye.


Here is the Bug.apl file:

$ cat workspaces/Bug.apl
#!/usr/local/bin/apl --script

 ⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝
⍝
⍝ Bug 2015-04-27 19:37:30 (GMT-4)
⍝
 ⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝⍝

∇z←∆ name;w
 z←⎕cr name                 ⍝ Function name to display
 ⍝ →(0=×/⍴z)/0                ⍝ nothing to display or bad 'name'
 w←1+⌊10⍟↑⍴z                ⍝ num of digits for max number of lines
 z←'[',((w,0)⍕((↑⍴z)1)⍴(¯1+⍳↑⍴z)),[2]']',' ',z
 z[1;⍳w+3]←(-w+3)↑'∇'       ⍝ function definition
 z←z,[1](¯1↑⍴z)↑(-w+3)↑'∇'  ⍝ add last line
 z←z⍪' '                    ⍝ and a final blank line
∇

∇∆∆;funs;z
 funs←⊂[2]⎕nl 3
 funs←({(∼⌽∧\⌽⍵=' ')/⍵}¨funs[⍋funs])~ (,'∆') '∆∆'
 z←∆¨funs
 ⊣{⎕←⍵}¨z
∇

⎕CT←1E¯13

⎕FC←(,⎕UCS 46 44 8902 48 95 175)

⎕IO←1

⎕L←0

⎕LX←' ' ⍝ prototype...
  ⎕LX←0⍴⎕LX

⎕PP←10

⎕PR←' '

⎕PS←0

⎕PW←80

⎕R←0

⎕RL←16807

⎕TZ←-4

⎕X←0




reply via email to

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