Ваш код use warnings;
?
Симптом, который вы описали, указывает на то, что в вашем коде вы передаете die
строку "\n"
.Я предполагаю, что в вашем источнике есть строка, которая пытается умереть с сообщением об ошибке, но ваше сообщение об ошибке не было инициализировано.Это может быть что-то вроде
my $error;
if (some_test()) {
$error = 'Some String';
}
if (some_other_test()) {
die "$error\n";
}
Если some_test()
проходит, но some_other_test()
не удается, матрица сообщит об ошибке, содержащей только новую строку.Он также выдаст предупреждение, если предупреждения включены.
Другая возможность - опечатка.Если вы не use strict;
, переменная ошибки может быть неправильной.
my $error = 'Some String';
if ($error) {
#note the typo (transposed ro to or)
die "$erorr\n";
}
Без use strict;
это может быть простой ошибкой, которую можно пропустить.