This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
resync with mainline
[perl5.git] / t / pragma / warn / util
1   util.c AOK
2  
3      Illegal octal digit ignored 
4         my $a = oct "029" ;
5
6      Illegal hex digit ignored 
7         my $a = hex "0xv9" ;
8
9      Illegal binary digit ignored
10       my $a = oct "0b9" ;
11      
12      Integer overflow in binary number
13         my $a =  oct "0b111111111111111111111111111111111111111111" ;
14      Binary number > 0b11111111111111111111111111111111 non-portable
15         $a =  oct "0b111111111111111111111111111111111" ;
16      Integer overflow in octal number
17         my $a =  oct "0777777777777777777777777777777777777777777777777" ;
18      Octal number > 037777777777 non-portable
19         $a =  oct "0047777777777" ;
20      Integer overflow in hexadecimal number
21         my $a =  hex "0xffffffffffffffffffff" ;
22      Hexadecimal number > 0xffffffff non-portable
23         $a =  hex "0x1ffffffff" ;
24
25 __END__
26 # util.c
27 use warnings 'digit' ;
28 my $a = oct "029" ;
29 no warnings 'digit' ;
30 $a = oct "029" ;
31 EXPECT
32 Illegal octal digit '9' ignored at - line 3.
33 ########
34 # util.c
35 use warnings 'digit' ;
36 my $a =  hex "0xv9" ;
37 no warnings 'digit' ;
38 $a =  hex "0xv9" ;
39 EXPECT
40 Illegal hexadecimal digit 'v' ignored at - line 3.
41 ########
42 # util.c
43 use warnings 'digit' ;
44 my $a =  oct "0b9" ;
45 no warnings 'digit' ;
46 $a =  oct "0b9" ;
47 EXPECT
48 Illegal binary digit '9' ignored at - line 3.
49 ########
50 # util.c
51 use warnings 'overflow' ;
52 my $a =  oct "0b11111111111111111111111111111111111111111111111111111111111111111";
53 no warnings 'overflow' ;
54 $a =  oct "0b11111111111111111111111111111111111111111111111111111111111111111";
55 EXPECT
56 Integer overflow in binary number at - line 3.
57 ########
58 # util.c
59 use warnings 'overflow' ;
60 my $a =  hex "0xffffffffffffffffffff" ;
61 no warnings 'overflow' ;
62 $a =  hex "0xffffffffffffffffffff" ;
63 EXPECT
64 Integer overflow in hexadecimal number at - line 3.
65 ########
66 # util.c
67 use warnings 'overflow' ;
68 my $a =  oct "0777777777777777777777777777777777777777777777777" ;
69 no warnings 'overflow' ;
70 $a =  oct "0777777777777777777777777777777777777777777777777" ;
71 EXPECT
72 Integer overflow in octal number at - line 3.
73 ########
74 # util.c
75 use warnings 'portable' ;
76 my $a =  oct "0b011111111111111111111111111111110" ;
77    $a =  oct "0b011111111111111111111111111111111" ;
78    $a =  oct "0b111111111111111111111111111111111" ;
79 no warnings 'portable' ;
80    $a =  oct "0b011111111111111111111111111111110" ;
81    $a =  oct "0b011111111111111111111111111111111" ;
82    $a =  oct "0b111111111111111111111111111111111" ;
83 EXPECT
84 Binary number > 0b11111111111111111111111111111111 non-portable at - line 5.
85 ########
86 # util.c
87 use warnings 'portable' ;
88 my $a =  hex "0x0fffffffe" ;
89    $a =  hex "0x0ffffffff" ;
90    $a =  hex "0x1ffffffff" ;
91 no warnings 'portable' ;
92    $a =  hex "0x0fffffffe" ;
93    $a =  hex "0x0ffffffff" ;
94    $a =  hex "0x1ffffffff" ;
95 EXPECT
96 Hexadecimal number > 0xffffffff non-portable at - line 5.
97 ########
98 # util.c
99 use warnings 'portable' ;
100 my $a =  oct "0037777777776" ;
101    $a =  oct "0037777777777" ;
102    $a =  oct "0047777777777" ;
103 no warnings 'portable' ;
104    $a =  oct "0037777777776" ;
105    $a =  oct "0037777777777" ;
106    $a =  oct "0047777777777" ;
107 EXPECT
108 Octal number > 037777777777 non-portable at - line 5.