bug-apl
[Top][All Lists]
Advanced

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

Re: [Bug-apl] bad character in execute+


From: Hans-Peter Sorge
Subject: Re: [Bug-apl] bad character in execute+
Date: Mon, 8 Oct 2018 22:08:50 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.0

Hello Jürgen,

compile fails with

Executable.cc: In member function 'void Executable::setup_lambdas()':
Executable.cc:529:46: error: no matching function for call to
'Executable::setup_one_lambda(ShapeItem&, int&)'
          b = setup_one_lambda(b, ++lambda_num) - 1;   // -1 due to ++b
in loop(b) above
                                              ^
In file included from Executable.cc:22:
Executable.hh:164:14: note: candidate: 'ShapeItem
Executable::setup_one_lambda(ShapeItem, ShapeItem, int)'
    ShapeItem setup_one_lambda(ShapeItem b, ShapeItem end, int lambda_num);
              ^~~~~~~~~~~~~~~~
Executable.hh:164:14: note:   candidate expects 3 arguments, 2 provided
Executable.cc: At global scope:
Executable.cc:543:1: error: no declaration matches 'ShapeItem
Executable::setup_one_lambda(ShapeItem, int)'
 Executable::setup_one_lambda(ShapeItem b, int lambda_num)
 ^~~~~~~~~~
In file included from Executable.cc:22:
Executable.hh:164:14: note: candidate is: 'ShapeItem
Executable::setup_one_lambda(ShapeItem, ShapeItem, int)'
    ShapeItem setup_one_lambda(ShapeItem b, ShapeItem end, int lambda_num);
              ^~~~~~~~~~~~~~~~
Executable.hh:38:7: note: 'class Executable' defined here
 class Executable
       ^~~~~~~~~~

Thanks,

Hans-Peter

Am 01.10.18 um 17:17 schrieb Juergen Sauermann:
> Hi Kacper,
>
> thanks, fixed in *SVN 1082*.
>
> /// Jürgen
>
>
>
> On 10/01/2018 01:11 AM, Kacper Gutowski wrote:
>> On Sun, Sep 30, 2018 at 03:42:53PM -0600, Nathan Rogers wrote:
>>> When using the diamond operator, the repl returns "bad character in
>>> execute+"
>>>
>>> simple example: \
>>> {1:2◊3}
>>>  Bad char in execute+
>> Lambda syntax in GNU APL isn't compatible with Dyalog's, and you can't
>> use diamond within it.  But the diamond here is a red herring.
>> It's the colon that causes the error before getting to the diamond:
>>
>>       :
>> Bad char in execute+
>>       {1⋄2}
>> Unbalanced curly bracket+
>>
>> It more-or-less works as expected.  The former is because : is not a
>> valid token outside of defined functions where it is used for labels.
>> The later is because it's interpreted as two separate statements split
>> by diamond.
>>
>> I think the )MORE messages for parse errors could be improved, though.
>> Now it just repeats "Bad char in execute".  It would be more informative
>> to say which character is the offending one.
>>
>> -k
>>
>>
>



reply via email to

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