Re: [Csnd-dev] is this also a new-style UDO issue?

vlz <[email protected]> Sat, 27 Sep 2025 08:17:39 +0100
Newsgroups gmane.comp.audio.csound.devel
Message-ID <[email protected]>
b is an i-time boolean, so you should use prints not printks. B is k-time instead.

Prof. Victor Lazzarini
Maynooth University
Ireland

> On 27 Sep 2025, at 02:13, joachim heintz <[email protected]> wrote:
> 
> it seems to be more related to the init opcode --- either not working properly for booleans, or used in a wrong way?
> this version with assignment works:
> 
> opcode one3(arrr:k[]):(b)
>  ans:b = true
>  xout(ans)
> endop
> 
> instr 1
>  a:k[] = [1,1,1]
>  if one3(a) then
>    printks("True\n",0)
>  else
>    printks("False\n",0)
>  endif
>  turnoff
> endin
> 
> 
>> On 27/09/2025 09:51, joachim heintz wrote:
>> opcode one3(arrr:k[]):(b)
>>   ans:b init true
>>   //here is of course other code
>>   xout(ans)
>> endop
>> instr 1
>>   a:k[] = [1,1,1]
>>   if one3(a) then
>>     printks("True\n",0)
>>   else
>>     printks("False\n",0)
>>   endif
>>   turnoff
>> endin
>> it should print "True" but it prints "False".
>> it works when i write
>>   if true then
>>    ...
>> by the way: how can i print the boolean value?
>>     joachim