xref: /openbsd/gnu/usr.bin/perl/t/lib/croak/regcomp (revision 09467b48)
1__END__
2# NAME \N{U+too large} on 64-bit machine
3# SKIP ? use Config; $Config{uvsize} < 8 && "Not 64 bit"
4qr/\N{U+7FFFFFFFFFFFFFFF}/;
5qr/\N{U+1_0000_0000_0000_0000}/;
6EXPECT
7Use of code point 0x1_0000_0000_0000_0000 is not allowed; the permissible max is 0x7fffffffffffffff in regex; marked by <-- HERE in m/\N{U+1_0000_0000_0000_0000 <-- HERE }/ at - line 2.
8########
9# NAME \N{U+too large} on 32-bit machine
10# SKIP ? use Config; $Config{uvsize} > 4 && "Not 32 bit"
11qr/\N{U+7FFFFFFF}/;
12qr/\N{U+1_0000_0000}/;
13EXPECT
14Use of code point 0x1_0000_0000 is not allowed; the permissible max is 0x7fffffff in regex; marked by <-- HERE in m/\N{U+1_0000_0000 <-- HERE }/ at - line 2.
15########
16# NAME \N{U+100.too large} on 64-bit machine
17# SKIP ? use Config; $Config{uvsize} < 8 && "Not 64 bit"
18qr/\N{U+100.7FFFFFFFFFFFFFFF}/;
19qr/\N{U+100.1_0000_0000_0000_0000}/;
20EXPECT
21Use of code point 0x1_0000_0000_0000_0000 is not allowed; the permissible max is 0x7fffffffffffffff in regex; marked by <-- HERE in m/\N{U+100.1_0000_0000_0000_0000 <-- HERE }/ at - line 2.
22########
23# NAME \N{U+100.too large} on 32-bit machine
24# SKIP ? use Config; $Config{uvsize} > 4 && "Not 32 bit"
25qr/\N{U+100.7FFFFFFF}/;
26qr/\N{U+100.1_0000_0000}/;
27EXPECT
28Use of code point 0x1_0000_0000 is not allowed; the permissible max is 0x7fffffff in regex; marked by <-- HERE in m/\N{U+100.1_0000_0000 <-- HERE }/ at - line 2.
29########
30# NAME \N{U+.}
31my $p00="\\N{U+.}"; qr/$p00/;
32EXPECT
33Invalid hexadecimal number in \N{U+...} in regex; marked by <-- HERE in m/\N{U+. <-- HERE }/ at - line 1.
34########
35# NAME \N{U+100.}
36my $p00="\\N{U+100.}"; qr/$p00/;
37EXPECT
38Invalid hexadecimal number in \N{U+...} in regex; marked by <-- HERE in m/\N{U+100. <-- HERE }/ at - line 1.
39########
40# NAME \N{U+_100}
41my $p00="\\N{U+_100}"; qr/$p00/;
42EXPECT
43Invalid hexadecimal number in \N{U+...} in regex; marked by <-- HERE in m/\N{U+_ <-- HERE 100}/ at - line 1.
44########
45# NAME \N{U+100_}
46my $p00="\\N{U+100_}"; qr/$p00/;
47EXPECT
48Invalid hexadecimal number in \N{U+...} in regex; marked by <-- HERE in m/\N{U+100_ <-- HERE }/ at - line 1.
49########
50# NAME [\xDF\N{U+.}]
51# SKIP ? ord("A") != 65 && "Test valid only on ASCII machines"
52my $p00="[\\xDF\\N{U+.}]"; qr/$p00/ui;
53# The sharp s under /i recodes the parse, and this was causing a segfault when
54# the error message referred to the original pattern
55EXPECT
56Invalid hexadecimal number in \N{U+...} in regex; marked by <-- HERE in m/[\xDF\N{U+. <-- HERE }]/ at - line 1.
57########
58# NAME [\x59\N{U+.}]
59# SKIP ? ord("A") == 65 && "Test valid only on EBCDIC machines"
60my $p00="[\\x59\\N{U+.}]"; qr/$p00/ui;
61# The sharp s under /i recodes the parse, and this was causing a segfault when
62# the error message referred to the original pattern
63EXPECT
64Invalid hexadecimal number in \N{U+...} in regex; marked by <-- HERE in m/[\x59\N{U+. <-- HERE }]/ at - line 1.
65########
66# NAME ${^RE_COMPILE_RECURSION_LIMIT} [perl #131551]
67BEGIN { ${^RE_COMPILE_RECURSION_LIMIT} = ${^RE_COMPILE_RECURSION_LIMIT} = 2; }
68qr/(a)/;
69qr/((a))/;
70EXPECT
71Too many nested open parens in regex; marked by <-- HERE in m/(( <-- HERE a))/ at - line 3.
72########
73