1use strict;
2use warnings;
3use v5.16.0;
4use File::Temp 'tempdir';
5use File::Spec::Functions;
6use Test::More;
7
8BEGIN {
9  plan skip_all => "Home-grown glob does not do character classes on $^O" if $^O eq 'VMS';
10}
11
12plan tests => 1;
13
14my @md = (1..305);
15my @mp = (1000..1205);
16
17my $path = tempdir uc cleanup => 1;
18
19my $md = 0;
20my $mp = 0;
21
22foreach (@md) {
23    if (open(my $f, ">", catfile $path, "md_$_.dat")) {
24        $md++;
25        close $f;
26    }
27}
28
29foreach (@mp) {
30    if (open(my $f, ">", catfile $path, "mp_$_.dat")) {
31        $mp++;
32        close $f;
33    }
34}
35my @b = glob(qq{$path/mp_[0123456789]*.dat $path/md_[0123456789]*.dat});
36if ($md+$mp < @md+@mp) {
37   warn sprintf("$0: expected to create %d files, created only %d (path $path)\n",
38                @md+@mp, $md+$mp);
39}
40is scalar(@b), $md+$mp,
41    'File::Glob extends the stack when returning a long list';
42