xref: /onnv-gate/usr/src/cmd/perl/5.8.4/distrib/t/lib/warnings/regexec (revision 0:68f95e015346)
1*0Sstevel@tonic-gate  regexec.c
2*0Sstevel@tonic-gate
3*0Sstevel@tonic-gate  This test generates "bad free" warnings when run under
4*0Sstevel@tonic-gate  PERL_DESTRUCT_LEVEL.  This file merely serves as a placeholder
5*0Sstevel@tonic-gate  for investigation.
6*0Sstevel@tonic-gate
7*0Sstevel@tonic-gate  Complex regular subexpression recursion limit (%d) exceeded
8*0Sstevel@tonic-gate
9*0Sstevel@tonic-gate        $_ = 'a' x (2**15+1); /^()(a\1)*$/ ;
10*0Sstevel@tonic-gate  Complex regular subexpression recursion limit (%d) exceeded
11*0Sstevel@tonic-gate
12*0Sstevel@tonic-gate        $_ = 'a' x (2**15+1); /^()(a\1)*?$/ ;
13*0Sstevel@tonic-gate
14*0Sstevel@tonic-gate  (The actual value substituted for %d is masked in the tests so that
15*0Sstevel@tonic-gate  REG_INFTY configuration variable value does not affect outcome.)
16*0Sstevel@tonic-gate__END__
17*0Sstevel@tonic-gate# regexec.c
18*0Sstevel@tonic-gateprint("SKIPPED\n# most systems run into stacksize limits\n"),exit;
19*0Sstevel@tonic-gateuse warnings 'regexp' ;
20*0Sstevel@tonic-gate$SIG{__WARN__} = sub{local ($m) = shift;
21*0Sstevel@tonic-gate                 $m =~ s/\(\d+\)/(*MASKED*)/;
22*0Sstevel@tonic-gate                 print STDERR $m};
23*0Sstevel@tonic-gate$_ = 'a' x (2**15+1);
24*0Sstevel@tonic-gate/^()(a\1)*$/ ;
25*0Sstevel@tonic-gate#
26*0Sstevel@tonic-gate# If this test fails with a segmentation violation or similar,
27*0Sstevel@tonic-gate# you may have to increase the default stacksize limit in your
28*0Sstevel@tonic-gate# shell.  You may need superuser privileges.
29*0Sstevel@tonic-gate#
30*0Sstevel@tonic-gate# Under the sh, ksh, zsh:
31*0Sstevel@tonic-gate#    $ ulimit -s
32*0Sstevel@tonic-gate#    8192
33*0Sstevel@tonic-gate#    $ ulimit -s 16000
34*0Sstevel@tonic-gate#
35*0Sstevel@tonic-gate# Under the csh:
36*0Sstevel@tonic-gate#    % limit stacksize
37*0Sstevel@tonic-gate#    stacksize        8192 kbytes
38*0Sstevel@tonic-gate#    % limit stacksize 16000
39*0Sstevel@tonic-gate#
40*0Sstevel@tonic-gateEXPECT
41*0Sstevel@tonic-gateComplex regular subexpression recursion limit (*MASKED*) exceeded at - line 9.
42*0Sstevel@tonic-gate########
43*0Sstevel@tonic-gate# regexec.c
44*0Sstevel@tonic-gateprint("SKIPPED\n# most systems run into stacksize limits\n"),exit;
45*0Sstevel@tonic-gateno warnings 'regexp' ;
46*0Sstevel@tonic-gate$SIG{__WARN__} = sub{local ($m) = shift;
47*0Sstevel@tonic-gate                 $m =~ s/\(\d+\)/(*MASKED*)/;
48*0Sstevel@tonic-gate                 print STDERR $m};
49*0Sstevel@tonic-gate$_ = 'a' x (2**15+1);
50*0Sstevel@tonic-gate/^()(a\1)*$/ ;
51*0Sstevel@tonic-gate#
52*0Sstevel@tonic-gate# If this test fails with a segmentation violation or similar,
53*0Sstevel@tonic-gate# you may have to increase the default stacksize limit in your
54*0Sstevel@tonic-gate# shell.  You may need superuser privileges.
55*0Sstevel@tonic-gate#
56*0Sstevel@tonic-gate# Under the sh, ksh, zsh:
57*0Sstevel@tonic-gate#    $ ulimit -s
58*0Sstevel@tonic-gate#    8192
59*0Sstevel@tonic-gate#    $ ulimit -s 16000
60*0Sstevel@tonic-gate#
61*0Sstevel@tonic-gate# Under the csh:
62*0Sstevel@tonic-gate#    % limit stacksize
63*0Sstevel@tonic-gate#    stacksize        8192 kbytes
64*0Sstevel@tonic-gate#    % limit stacksize 16000
65*0Sstevel@tonic-gate#
66*0Sstevel@tonic-gateEXPECT
67*0Sstevel@tonic-gate
68*0Sstevel@tonic-gate########
69*0Sstevel@tonic-gate# regexec.c
70*0Sstevel@tonic-gateprint("SKIPPED\n# most systems run into stacksize limits\n"),exit;
71*0Sstevel@tonic-gateuse warnings 'regexp' ;
72*0Sstevel@tonic-gate$SIG{__WARN__} = sub{local ($m) = shift;
73*0Sstevel@tonic-gate                 $m =~ s/\(\d+\)/(*MASKED*)/;
74*0Sstevel@tonic-gate                 print STDERR $m};
75*0Sstevel@tonic-gate$_ = 'a' x (2**15+1);
76*0Sstevel@tonic-gate/^()(a\1)*?$/ ;
77*0Sstevel@tonic-gate#
78*0Sstevel@tonic-gate# If this test fails with a segmentation violation or similar,
79*0Sstevel@tonic-gate# you may have to increase the default stacksize limit in your
80*0Sstevel@tonic-gate# shell.  You may need superuser privileges.
81*0Sstevel@tonic-gate#
82*0Sstevel@tonic-gate# Under the sh, ksh, zsh:
83*0Sstevel@tonic-gate#    $ ulimit -s
84*0Sstevel@tonic-gate#    8192
85*0Sstevel@tonic-gate#    $ ulimit -s 16000
86*0Sstevel@tonic-gate#
87*0Sstevel@tonic-gate# Under the csh:
88*0Sstevel@tonic-gate#    % limit stacksize
89*0Sstevel@tonic-gate#    stacksize        8192 kbytes
90*0Sstevel@tonic-gate#    % limit stacksize 16000
91*0Sstevel@tonic-gate#
92*0Sstevel@tonic-gateEXPECT
93*0Sstevel@tonic-gateComplex regular subexpression recursion limit (*MASKED*) exceeded at - line 9.
94*0Sstevel@tonic-gate########
95*0Sstevel@tonic-gate# regexec.c
96*0Sstevel@tonic-gateprint("SKIPPED\n# most systems run into stacksize limits\n"),exit;
97*0Sstevel@tonic-gateno warnings 'regexp' ;
98*0Sstevel@tonic-gate$SIG{__WARN__} = sub{local ($m) = shift;
99*0Sstevel@tonic-gate                 $m =~ s/\(\d+\)/(*MASKED*)/;
100*0Sstevel@tonic-gate                 print STDERR $m};
101*0Sstevel@tonic-gate$_ = 'a' x (2**15+1);
102*0Sstevel@tonic-gate/^()(a\1)*?$/ ;
103*0Sstevel@tonic-gate#
104*0Sstevel@tonic-gate# If this test fails with a segmentation violation or similar,
105*0Sstevel@tonic-gate# you may have to increase the default stacksize limit in your
106*0Sstevel@tonic-gate# shell.  You may need superuser privileges.
107*0Sstevel@tonic-gate#
108*0Sstevel@tonic-gate# Under the sh, ksh, zsh:
109*0Sstevel@tonic-gate#    $ ulimit -s
110*0Sstevel@tonic-gate#    8192
111*0Sstevel@tonic-gate#    $ ulimit -s 16000
112*0Sstevel@tonic-gate#
113*0Sstevel@tonic-gate# Under the csh:
114*0Sstevel@tonic-gate#    % limit stacksize
115*0Sstevel@tonic-gate#    stacksize        8192 kbytes
116*0Sstevel@tonic-gate#    % limit stacksize 16000
117*0Sstevel@tonic-gate#
118*0Sstevel@tonic-gateEXPECT
119*0Sstevel@tonic-gate
120