develooper Front page | perl.perl5.porters | Postings from September 2010

Re: [perl #74798] [PATCH] Data::Dumper: useqq implementation forxs

Thread Next
From:
Slaven Rezic
Date:
September 27, 2010 04:52
Subject:
Re: [perl #74798] [PATCH] Data::Dumper: useqq implementation forxs
Message ID:
4CA07439.7020908@iconmobile.com
Father Chrysostomos via RT wrote:
> On Fri Apr 30 01:52:00 2010, srezic@iconmobile.com wrote:
>   
>> The patch basically misuses the existing esc_q_utf8 function which 
>> already does limited "..." escaping, and adds additional escaping for 
>> characters < 0x20.
>>
>> Regards,
>>     Slaven
>>
>>     
>
> Thank you for the patch. It looks nice, but there’s one problem:
>
> $ ./perl -Ilib -MData::Dumper -le '++$Data::Dumper::Useqq; print Dumper
> join "", map chr, 0..255'
> Malformed UTF-8 character (overflow at 0xc41461c8, byte 0xc9, after
> start byte 0xbf) in subroutine entry at lib/Data/Dumper.pm line 190.
> Malformed UTF-8 character (overflow at 0xc41461c8, byte 0xc9, after
> start byte 0xbf) in subroutine entry at lib/Data/Dumper.pm line 190.
> $VAR1 =
> "\0\1\2\3\4\5\6\a\b\t\n\13\f\r\16\17\20\21\22\23\24\25\26\27\30\31\32\e\34\35\36\37
> !\"#\$%&'()*+,-./0123456789:;<=>?\@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\1B\x{83}\x{c4}\x{105}\x{146}\x{187}\x{1c8}\x{209}\x{24a}\x{28b}\x{2cc}\x{30d}\x{34e}\x{38f}\x{3d0}\x{411}\x{452}\x{493}\x{4d4}\x{515}\x{556}\x{597}\x{5d8}\x{619}\x{65a}\x{69b}\x{6dc}\x{71d}\x{75e}\x{79f}\x{7e0}\x{862}\x{18a3}\x{28e4}\x{3925}\x{4966}\x{59a7}\x{69e8}\x{7a29}\x{8a6a}\x{9aab}\x{aaec}\x{bb2d}\x{cb6e}\x{dbaf}\x{ebf0}\x{fc31}\x{31cb3}\x{72cf4}\x{b3d35}\x{f4d76}\x{135db7}\x{176df8}\x{1b7e39}\x{1f8e7a}\x{e7aefc}\x{1ebbf3d}\x{2efcf7e}\x{3f3dfbf}\x{3dfbf001}\x{7efc0042}\x{c00420c4}\0\1\x{83}\x{105}\x{187}\x{209}\x{28b}\x{30d}\x{38f}\x{411}\x{493}\x{515}\x{597}\x{619}\x{69b}\x{71d}\x{79f}\x{862}\x{3925}\x{69e8}\x{9aab}\x{cb6e}\x{fc31}\x{b3d35}\x{1b7e39}\x{2efcf7e}\0";
>
> This is the output I get with the pure-Perl version:
>
> $ perl -MData::Dumper -le '++$Data::Dumper::Useqq; print Dumper join "",
> map chr, 0..255'
> $VAR1 =
> "\0\1\2\3\4\5\6\a\b\t\n\13\f\r\16\17\20\21\22\23\24\25\26\27\30\31\32\e\34\35\36\37
> !\"#\$%&'()*+,-./0123456789:;<=>?\@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\177\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\240\241\242\243\244\245\246\247\250\251\252\253\254\255\256\257\260\261\262\263\264\265\266\267\270\271\272\273\274\275\276\277\300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\332\333\334\335\336\337\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377";
>
>
>   
This suggests that there are some tests missing. So please accept first 
the attached patch which just add tests for all of 0..255. I'll look 
into the problems later.

Regards,
    Slaven

Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About