2014-09-03 2 views
11

Когда я запускаю следующий код, чтобы проверить сообщение об ошибке, Perl (5.14.2 на Ubuntu) говорит Illegal division by zero at test2.pl line 5.Ошибка в интерпретаторе perl в сообщении об ошибке?

sub dummy { 
    if ($a>3) { 
     $a ++; 
    } 
    else { printf(1/0); 
    } 
    return 1; 
} 
dummy(); 

Однако, если я удалить пробел перед printf, сообщение об ошибке будет сказать Illegal division by zero at test2.pl line 2.

Удаление лишнего места не должно изменяться в строке сообщения об ошибке. Итак, похоже, что это ошибка в интерпретаторе perl. Это правильно?

Спасибо.

+1

Подтверждено на Win7 Strawberry Perl v5.16.2. – TLP

+1

Спасибо за подтверждение @TLP. – packetie

+1

Подтверждено на Centos 6.5, Perl v5.10.1. – MarcoS

ответ

3

Правильно, это ошибка. Вы можете сообщить разработчикам Perl с помощью инструмента командной строки perlbug.

+3

Спасибо, сообщите об этом, как вы предложили. – packetie

Смежные вопросы