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