This was fixed in (2015-12-15)
https://github.com/rakudo/rakudo/commit/d23a73da4360961ebdce703ccebcdf6ba77d1f92

All snippets from the log:

my (\a,\b) = 1,2; say a; say b # OUTPUT: «1␤2␤»
my (\a,\b) := \(1,2); say a; say b # OUTPUT: «1␤2␤»
my (\a,\b) ::= \(1,2); say a; say b # OUTPUT: «(exit code 1) ===SORRY!=== Error
while compiling /tmp/li5UfU_taT␤"::=" not yet implemented. Sorry.␤at
/tmp/li5UfU_taT:1␤------> my (\a,\b) ::= \(1,2)⏏; say a; say b␤»
my ($a, $b) = 1, 2; say $a; say $b # OUTPUT: «1␤2␤»
my \a = 1; say a # OUTPUT: «1␤»
my (\a) = 1; say a # OUTPUT: «1␤»
my ($a, *@b) = 1, 2; say $a, @b # OUTPUT: «1[2]␤»

::= is NYI and that's OK (but we probably want a tested fudge for it anyway).

「testneeded」

On 2015-03-30 08:16:46, masak wrote:
> <TimToady> m: my (\a,\b) = 1,2; say a
> <camelia> rakudo-moar 02e1e9: OUTPUT«(Any)␤»
> <TimToady> seems like a bug
> * masak submits rakudobug
> <jnthn> That should either DWYM or whine, I guess.
> <TimToady> m: my (\a,\b) := \(1,2); say a
> <camelia> rakudo-moar 02e1e9: OUTPUT«(Any)␤»
> <TimToady> m: my (\a,\b) ::= \(1,2); say a
> <camelia> rakudo-moar 02e1e9: OUTPUT«(Any)␤»
> <jnthn> OK, *that* one certainly should work.
> <jnthn> The assignment one is more dubious.
> <jnthn> But silently failing is certainly wrong.
> <masak> m: my ($a, $b) = 1, 2; say $a
> <camelia> rakudo-moar 02e1e9: OUTPUT«1␤»
> <masak> m: my \a = 1; say a
> <camelia> rakudo-moar 02e1e9: OUTPUT«1␤»
> <masak> since those two work, I'd expect TimToady's first one to work.
> <jnthn> masak: That's not obvious.
> <jnthn> masak: \a variables are SSA and we don't create a container.
> <TimToady> m: my (\a) = 1; say a
> <camelia> rakudo-moar 02e1e9: OUTPUT«(Any)␤»
> <jnthn> I *thought* we had something in place that looked at
> signatures and complained if they had anything that made them too
> complex to drop to a simple list of containers.
> <jnthn> m: my ($a, *@b) = 1, 2;
> <camelia> rakudo-moar 02e1e9: ( no output )
> <jnthn> Hmm
> <jnthn> I must be mis-rememebering or something.
>
> Either the first eval should fail loudly, or it should work. We're not
> quite sure. But it should not silently fail as it does currently.

Reply via email to