1 pp.c TODO 2 3 Invalid type in unpack: '%c 4 my $A = pack ("A,A", 1,2) ; 5 my @A = unpack ("A,A", "22") ; 6 7 Attempt to pack pointer to temporary value 8 pack("p", "abc") ; 9 10__END__ 11# pp_pack.c 12use warnings 'pack' ; 13use warnings 'unpack' ; 14my @a = unpack ("A,A", "22") ; 15my $a = pack ("A,A", 1,2) ; 16no warnings 'pack' ; 17no warnings 'unpack' ; 18my @b = unpack ("A,A", "22") ; 19my $b = pack ("A,A", 1,2) ; 20EXPECT 21Invalid type ',' in unpack at - line 4. 22Invalid type ',' in pack at - line 5. 23######## 24# pp.c 25use warnings 'uninitialized' ; 26my $a = undef ; 27my $b = $$a; 28no warnings 'uninitialized' ; 29my $c = $$a; 30EXPECT 31Use of uninitialized value $a in scalar dereference at - line 4. 32######## 33# pp_pack.c 34use warnings 'pack' ; 35sub foo { my $a = "a"; return $a . $a++ . $a++ } 36my $a = pack("p", &foo) ; 37no warnings 'pack' ; 38my $b = pack("p", &foo) ; 39EXPECT 40Attempt to pack pointer to temporary value at - line 4. 41######## 42# pp.c 43use warnings 'misc' ; 44bless \[], "" ; 45no warnings 'misc' ; 46bless \[], "" ; 47EXPECT 48Explicit blessing to '' (assuming package main) at - line 3. 49######## 50# pp.c 51use utf8 ; 52$_ = "\x80 \xff" ; 53reverse ; 54EXPECT 55######## 56# pp_pack.c 57use warnings 'pack' ; 58print unpack("C", pack("C", -1)), "\n", 59 unpack("C", pack("C", 0)), "\n", 60 unpack("C", pack("C", 255)), "\n", 61 unpack("C", pack("C", 256)), "\n", 62 unpack("c", pack("c", -129)), "\n", 63 unpack("c", pack("c", -128)), "\n", 64 unpack("c", pack("c", 127)), "\n", 65 unpack("c", pack("c", 128)), "\n"; 66no warnings 'pack' ; 67print unpack("C", pack("C", -1)), "\n"; 68print unpack("C", pack("C", 0)), "\n"; 69print unpack("C", pack("C", 255)), "\n"; 70print unpack("C", pack("C", 256)), "\n"; 71print unpack("c", pack("c", -129)), "\n"; 72print unpack("c", pack("c", -128)), "\n"; 73print unpack("c", pack("c", 127)), "\n"; 74print unpack("c", pack("c", 128)), "\n"; 75EXPECT 76Character in 'C' format wrapped in pack at - line 3. 77Character in 'C' format wrapped in pack at - line 3. 78Character in 'c' format wrapped in pack at - line 3. 79Character in 'c' format wrapped in pack at - line 3. 80255 810 82255 830 84127 85-128 86127 87-128 88255 890 90255 910 92127 93-128 94127 95-128 96