is -t *STDOUT{IO} broken?

Hey all, not sure if this is a bug or intended behavior.

"-t *STDOUT{GLOB}" and "-t fileno(*STDOUT{IO})" but work as expected,
but "-t *STDOUT{IO}" doesn't.

# the following works as expected from a terminal:
$ perl -Mstrict -w -E 'say -t *STDOUT{GLOB}'
1
$ perl -Mstrict -w -E 'say -t fileno(*STDOUT{IO})'
1

# from the same terminal:
$ perl -Mstrict -w -E 'say -t *STDOUT{IO}'
Use of uninitialized value in say at -e line 1.

Fwiw, I still find IO vs GLOB confusing despite reading perlref
manpage for decades :x

Happens on Perl 5.32 (FreeBSD 11) and 5.28.1 (Debian 10 buster)
Thanks in advance for any response you provide.

(I can't use GitHub due to Terms-of-Service + JS + CAPTCHA requirement)
0
p5p
1/9/2021 3:16:50 AM
perl.perl5.porters 48288 articles. 1 followers. Follow

0 Replies
11 Views

Similar Articles

[PageSpeed] 31

Reply: