issue306.t 776 B

12345678910111213141516171819202122232425
  1. #! /usr/bin/env perl
  2. # GH #306, destruction of init_av and end_av
  3. use strict;
  4. BEGIN {
  5. unshift @INC, 't';
  6. require TestBC;
  7. }
  8. use Test::More tests => 4;
  9. use Config;
  10. use B::C ();
  11. my $todo = ($B::C::VERSION ge '1.52_12') ? "" : "TODO ";
  12. $todo = "TODO 5.22-thr " if $] > 5.021 and $Config{useithreads};
  13. my $todoc = "";
  14. $todoc = "TODO cperl unopaux" if $Config{usecperl};
  15. my $script = <<'EOF';
  16. INIT { $SIG{__WARN__} = sub { die } } print "ok\n";
  17. EOF
  18. ctestok(1, 'C', 'ccode306i', $script, $todo.'C init_av warnfree');
  19. ctestok(2, 'C,-O3','ccode306i', $script, $todo.$todoc.'C,-O3 init_av warnfree');
  20. $script =~ s/INIT /END /;
  21. ctestok(3, 'C', 'ccode306i', $script, $todo.'C end_av warnfree');
  22. ctestok(4, 'C,-O3','ccode306i', $script, $todo.'C,-O3 end_av warnfree');