summaryrefslogtreecommitdiff
path: root/ext/B/Showlex.t
diff options
context:
space:
mode:
Diffstat (limited to 'ext/B/Showlex.t')
-rw-r--r--ext/B/Showlex.t39
1 files changed, 39 insertions, 0 deletions
diff --git a/ext/B/Showlex.t b/ext/B/Showlex.t
new file mode 100644
index 0000000000..a21f03bb15
--- /dev/null
+++ b/ext/B/Showlex.t
@@ -0,0 +1,39 @@
+#!./perl
+
+BEGIN {
+ if ($^O eq 'MacOS') {
+ @INC = qw(: ::lib ::macos:lib);
+ }
+}
+
+$| = 1;
+use warnings;
+use strict;
+use Config;
+
+print "1..1\n";
+
+my $test = 1;
+
+sub ok { print "ok $test\n"; $test++ }
+
+my $a;
+my $Is_VMS = $^O eq 'VMS';
+my $Is_MacOS = $^O eq 'MacOS';
+
+my $path = join " ", map { qq["-I$_"] } @INC;
+my $redir = $Is_MacOS ? "" : "2>&1";
+my $is_thread = $Config{use5005threads} && $Config{use5005threads} eq 'define';
+
+if ($is_thread) {
+ print "# use5005threads: test $test skipped\n";
+} else {
+ $a = `$^X $path "-MO=Showlex" -e "my %one" $redir`;
+ if (ord('A') != 193) { # ASCIIish
+ print "# [$a]\nnot " unless $a =~ /sv_undef.*PVNV.*%one.*sv_undef.*HV/s;
+ }
+ else { # EBCDICish C<1: PVNV (0x1a7ede34) "%\226\225\205">
+ print "# [$a]\nnot " unless $a =~ /sv_undef.*PVNV.*%\\[0-9].*sv_undef.*HV/s;
+ }
+}
+ok;