[perl #132214] [LHF] `need` with version silently fails

[email protected] ("Zoffix Znet via RT") Sat, 27 Oct 2018 05:44:08 -0700
Newsgroups perl.perl6.compiler
Message-ID <[email protected]>
On Tue, 03 Oct 2017 08:34:39 -0700, [email protected] wrote:
> If you `use` a v6.d, it causes language switch and will also complain
> if the version is too high.
> The same doesn't happen with `need`. It should probably fail in these
> cases, and `<version>` should
> be just removed from the grammar[^1].
> 
> 15:26           m: need v6.c
> 15:26   camelia         rakudo-moar f946bd: ( no output )
> 15:27   Zoffix  m: need v6.e
> 15:27   camelia         rakudo-moar f946bd: ( no output )
> 15:32   Zoffix  m: need v6.d; say $*PERL.version
> 15:32   camelia         rakudo-moar f946bd: OUTPUT: «v6.c␤»
> 
> [1]
> https://github.com/rakudo/rakudo/blob/f946bd35dca39af97983ec95d4da7fdd0416b73d/src/Perl6/Grammar.nqp#L1548


This appears to be fixed now:

<Zoffix__> m: need v6.d
<camelia> rakudo-moar e7e91ecfb: OUTPUT: «===SORRY!=== Error while compiling <tmp>␤In case of using pragma, use "use" instead (e.g., "use v6;", "use v6.c;").␤at <tmp>:1␤------> need v6.d⏏<EOL>␤»