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