|
Модераторы: korob2001, ginnie |
|
infarch |
|
|||
Опытный Профиль Группа: Участник Сообщений: 526 Регистрация: 13.3.2009 Репутация: нет Всего: 1 |
Помогите пожалуйста понять что означает этот варнинг: "Use of uninitialized value within @_ in list assignment at /bb_projekt/docia/perl/lib/Backbone/TB.pm line 289."
В указанном модуле в строке 289 происходит присваивание:
Ошибка не моя, из чужого кода. Я даже воспроизвести не могу ( . |
|||
|
||||
ginnie |
|
|||
Эксперт Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
infarch, с приведенным кодом появление указанной ошибки маловероятно. У меня воспроизводится с таким:
-------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
infarch |
|
|||
Опытный Профиль Группа: Участник Сообщений: 526 Регистрация: 13.3.2009 Репутация: нет Всего: 1 |
Так и у меня воспроизводится. Но вот в том то коде не хеш в параметрах стоит, а скаляр...
|
|||
|
||||
infarch |
|
||||
Опытный Профиль Группа: Участник Сообщений: 526 Регистрация: 13.3.2009 Репутация: нет Всего: 1 |
Варнинг я устранил, но вот почему он вообще появлялся не могу понять.
Там была вот такая строка:
Проблема возникала когда функция $directory_obj->get("ParentDirectory_ID") возвращала undef. Причем если переписать вот так:
то варнинга опять таки небыло. |
||||
|
|||||
ginnie |
|
||||||
Эксперт Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
infarch, это мистика какая-то, а что выдает в случае явного указания undef в ключе хэша?
P.S. на тестовый код
perl v5.16.2 выдает предупреждения
похоже $hash{undef()}, если ключа undef() в хэше нет - это какое-то специальное значение, о котором и выводится отдельное предупреждение Это сообщение отредактировал(а) ginnie - 21.6.2013, 14:02 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
||||||
|
|||||||
infarch |
|
|||
Опытный Профиль Группа: Участник Сообщений: 526 Регистрация: 13.3.2009 Репутация: нет Всего: 1 |
Я уже к сожелению не протестирую. Клиент возрадовался что варнинг пропал, запустил сайт и больше опытов делать не будет. Разве что еще какой варнинг найдет )
|
|||
|
||||
infarch |
|
|||
Опытный Профиль Группа: Участник Сообщений: 526 Регистрация: 13.3.2009 Репутация: нет Всего: 1 |
Я уже к сожелению не протестирую. Клиент возрадовался что варнинг пропал, запустил сайт и больше опытов делать не будет. Разве что еще какой варнинг найдет )
|
|||
|
||||
Cyr |
|
|||
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 20.3.2006 Репутация: нет Всего: нет |
У меня есть процедура
При выполнении my $pdu = $CSTAapdu->encode... warning: "Use of uninitialized value in concatenation (.) or string at D:/strawberry/perl/vendor/lib/Convert/ASN1/_encode.pm line 60 (#1) (W uninitialized) An undefined value was used as if it were already defined. It was interpreted as a "" or a 0, but maybe it was a mistake. To suppress this warning assign a defined value to your variables." Не знаю, в чём проблемма и как исправить |
|||
|
||||
arto |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
похоже у вас ошибка при инициализации парсера.
мобно посмотреть, что у _encode.pm в строке 60 |
|||
|
||||
Cyr |
|
|||
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 20.3.2006 Репутация: нет Всего: нет |
arto,
там строка $_[4] .= $op->[cTAG]; |
|||
|
||||
arto |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
отследить, почему в $op->[cTAG] undef.
|
|||
|
||||
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |