Problem is that's not a syntax error as such. Running with stage stats you
can see where -c stop and where the error is thrown.

(I'm sure someone with deeper VM understanding can explain is better).

perl6 --stagestats -e 'sub foo($a, $b) { say "Hmm" };foo(1,2,"3")'
Stage start      :   0.000
Stage parse      :   0.116
Stage syntaxcheck:   0.000
Stage ast        :   0.000
Stage optimize   : ===SORRY!=== Error while compiling -e
Calling foo(Int, Int, Str) will never work with declared signature ($a, $b)
at -e:1
------> sub foo($a, $b) { say "Hmm" };⏏foo(1,2,"3")
perl6 --stagestats -ce 'sub foo($a, $b) { say "Hmm" };foo(1,2,"3")'
Stage start      :   0.000
Stage parse      :   0.110
Stage syntaxcheck: Syntax OK



On Wed, 25 Jul 2018 at 09:26 ToddAndMargo <toddandma...@zoho.com> wrote:

> Dear Developers,
>
> $ perl6 -v
> This is Rakudo version 2018.05 built on MoarVM version 2018.05
> implementing Perl 6.c.
>
> `Perl6 -c xxx.pl6` passes
>
>       if IsCurrentRevNewer ( $OldRev, $NewRev, $SubName, "no", "quiet" )
>
> when the sub it calls only has three variables in it header, not five:
>
>       sub IsCurrentRevNewer(
>          $Caller,      # who called this function
>          $LatestRev,   # Latest Revision
>          $OldRev ) {   # Old Revision
>
>
> -T
>
-- 
Simon Proctor
Cognoscite aliquid novum cotidie

Reply via email to