2010-10-22 19 views

Odpowiedz

0

Nie ma zadeklarowanej globalnej zmiennej o nazwie $YAML::XS::DumpCode. Ta konfiguracja jest w klasie YAML, więc powinieneś ustawić ją na local $YAML::DumpCode = 1;: patrz the documentation.

+0

Czy jesteś pewien? Kod C wydaje się używać XS: '((gv = gv_fetchpv (" YAML :: XS :: DumpCode ", TRUE, SVt_PV)) &&' –

+0

@Eric: to nie jest udokumentowane, a tam jest udokumentowane '$ YAML :: DumpCode', więc IMHO, że zmienna nie powinna być w ogóle XS powinien używać '$ YAML :: DumpCode'. – Ether

+0

http://search.cpan.org/~ingy/YAML-LibYAML-0.34/ lib/YAML/XS.pm # CONFIGURATION jawnie omawia '$ YAML :: XS :: UseCode'. –

18

Wygląda na to, że $YAML::XS::DumpCode jest używany tylko z kodu C i nigdy nie jest inicjowany w YAML/XS.pm (jest tam, ale został skomentowany). To może być błąd do przesłania na ten moduł.

W międzyczasie, no warnings 'once'; powinno załatwić sprawę.

+0

To samo ostrzeżenie dotyczy 'local $ YAML :: UseCode = 1;'. Czy to ta sama sprawa? Anothr bug (tym razem w samym 'YAML')? –

+1

@David => link "Inne narzędzia" na każdej stronie wydania cpan zawiera narzędzie grep do szybkiego wyszukiwania wszystkich plików w wydaniu. Zalecam wykonanie wyszukiwania 'UseCode' i zobaczenie, jak jest ono używane w module. –

Powiązane problemy