1*55745691SmillertCheck default warnings 2*55745691Smillert 3*55745691Smillert__END__ 4*55745691Smillert# default warnings should be displayed if you don't add anything 5*55745691Smillert# optional shouldn't 6*55745691Smillertmy $a = oct "7777777777777777777777777777777777779" ; 7*55745691SmillertEXPECT 8*55745691SmillertInteger overflow in octal number at - line 3. 9*55745691Smillert######## 10*55745691Smillert# no warnings should be displayed 11*55745691Smillertno warnings ; 12*55745691Smillertmy $a = oct "7777777777777777777777777777777777778" ; 13*55745691SmillertEXPECT 14*55745691Smillert######## 15*55745691Smillert# all warnings should be displayed 16*55745691Smillertuse warnings ; 17*55745691Smillertmy $a = oct "7777777777777777777777777777777777778" ; 18*55745691SmillertEXPECT 19*55745691SmillertInteger overflow in octal number at - line 3. 20*55745691SmillertIllegal octal digit '8' ignored at - line 3. 21*55745691SmillertOctal number > 037777777777 non-portable at - line 3. 22*55745691Smillert######## 23*55745691Smillert# check scope 24*55745691Smillertuse warnings ; 25*55745691Smillertmy $a = oct "7777777777777777777777777777777777778" ; 26*55745691Smillert{ 27*55745691Smillert no warnings ; 28*55745691Smillert my $a = oct "7777777777777777777777777777777777778" ; 29*55745691Smillert} 30*55745691Smillertmy $c = oct "7777777777777777777777777777777777778" ; 31*55745691SmillertEXPECT 32*55745691SmillertInteger overflow in octal number at - line 3. 33*55745691SmillertIllegal octal digit '8' ignored at - line 3. 34*55745691SmillertOctal number > 037777777777 non-portable at - line 3. 35*55745691SmillertInteger overflow in octal number at - line 8. 36*55745691SmillertIllegal octal digit '8' ignored at - line 8. 37*55745691SmillertOctal number > 037777777777 non-portable at - line 8. 38*55745691Smillert######## 39*55745691Smillert# all warnings should be displayed 40*55745691Smillertuse warnings ; 41*55745691Smillertmy $a = oct "0xfffffffffffffffffg" ; 42*55745691SmillertEXPECT 43*55745691SmillertInteger overflow in hexadecimal number at - line 3. 44*55745691SmillertIllegal hexadecimal digit 'g' ignored at - line 3. 45*55745691SmillertHexadecimal number > 0xffffffff non-portable at - line 3. 46*55745691Smillert######## 47*55745691Smillert# all warnings should be displayed 48*55745691Smillertuse warnings ; 49*55745691Smillertmy $a = oct "0b111111111111111111111111111111111111111111111111111111111111111112"; 50*55745691SmillertEXPECT 51*55745691SmillertInteger overflow in binary number at - line 3. 52*55745691SmillertIllegal binary digit '2' ignored at - line 3. 53*55745691SmillertBinary number > 0b11111111111111111111111111111111 non-portable at - line 3. 54*55745691Smillert######## 55*55745691Smillert 56*55745691Smillert# Check scope of pragma with eval 57*55745691Smillertuse warnings; 58*55745691Smillert{ 59*55745691Smillert no warnings ; 60*55745691Smillert eval ' 61*55745691Smillert my $a = oct "0xfffffffffffffffffg" ; 62*55745691Smillert '; print STDERR $@ ; 63*55745691Smillert my $a = oct "0xfffffffffffffffffg" ; 64*55745691Smillert} 65*55745691SmillertEXPECT 66*55745691Smillert 67*55745691Smillert######## 68*55745691Smillert 69*55745691Smillert# Check scope of pragma with eval 70*55745691Smillertuse warnings; 71*55745691Smillert{ 72*55745691Smillert no warnings ; 73*55745691Smillert eval q[ 74*55745691Smillert use warnings ; 75*55745691Smillert my $a = oct "0xfffffffffffffffffg" ; 76*55745691Smillert ]; print STDERR $@; 77*55745691Smillert my $a = oct "0xfffffffffffffffffg" ; 78*55745691Smillert} 79*55745691SmillertEXPECT 80*55745691SmillertInteger overflow in hexadecimal number at (eval 1) line 3. 81*55745691SmillertIllegal hexadecimal digit 'g' ignored at (eval 1) line 3. 82*55745691SmillertHexadecimal number > 0xffffffff non-portable at (eval 1) line 3. 83*55745691Smillert######## 84*55745691Smillert 85*55745691Smillert# Check scope of pragma with eval 86*55745691Smillertno warnings; 87*55745691Smillert{ 88*55745691Smillert use warnings ; 89*55745691Smillert eval ' 90*55745691Smillert my $a = oct "0xfffffffffffffffffg" ; 91*55745691Smillert '; print STDERR $@ ; 92*55745691Smillert} 93*55745691SmillertEXPECT 94*55745691SmillertInteger overflow in hexadecimal number at (eval 1) line 2. 95*55745691SmillertIllegal hexadecimal digit 'g' ignored at (eval 1) line 2. 96*55745691SmillertHexadecimal number > 0xffffffff non-portable at (eval 1) line 2. 97*55745691Smillert######## 98*55745691Smillert 99*55745691Smillert# Check scope of pragma with eval 100*55745691Smillertno warnings; 101*55745691Smillert{ 102*55745691Smillert use warnings; 103*55745691Smillert eval ' 104*55745691Smillert no warnings ; 105*55745691Smillert my $a = oct "0xfffffffffffffffffg" ; 106*55745691Smillert '; print STDERR $@ ; 107*55745691Smillert} 108*55745691SmillertEXPECT 109*55745691Smillert 110*55745691Smillert######## 111*55745691Smillert 112*55745691Smillert# Check scope of pragma with eval 113*55745691Smillertno warnings; 114*55745691Smillert{ 115*55745691Smillert use warnings 'deprecated' ; 116*55745691Smillert eval ' 117*55745691Smillert my $a = oct "0xfffffffffffffffffg" ; 118*55745691Smillert '; print STDERR $@; 119*55745691Smillert} 120*55745691SmillertEXPECT 121*55745691Smillert 122