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 <[email protected]> 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