Почему порядок прагмы имеет значение при включении экспериментальных функций? - PullRequest
0 голосов
/ 04 февраля 2019

Это определенное поведение, что имеет значение порядок features и use version?

use feature 'signatures';
use v5.026;

против

use v5.026;
use feature 'signatures';

Верх будет выдавать ошибку,

Глобальному символу требуется явное имя пакета

в

use feature 'signatures';                                                                                        
use v5.026;                                                                                                      

sub foo ($opt1, $opt2 = undef) {                                                                                 
  say $opt1 if $opt2;                                                                                            
}

1 Ответ

0 голосов
/ 04 февраля 2019

Объявление use v5.026 неявно включает набор функций для этой версии, в этом случае оно будет эквивалентно no feature ':all'; use feature ':5.26'.Это отменяет функции, которые вы уже включили / отключили.

...