On 2015-09-12 06:18:44, kes-kes@yandex.ru wrote:
Show quoted text> Net::DNS::Domain:57
>
> use constant LIBIDN => UTF8 && defined eval { require Net::LibIDN; };
>
> can be rewriten as:
>
> use constant LIBIDN => UTF8;
> eval { require Net::LibIDN; };
>
> may be you mean:
>
> defined eval { require Net::LibIDN; } && use constant LIBIDN => UTF8;
This does not work, because you try to do a compile-time statement depending on a runtime condition. Also, it's inefficient if UTF8 is false; in this case the code would needlessly load Net::LibIDN. But the current code in Net::DNS::Domain actually works, I think.