#!/usr/bin/perl

use strict;
use warnings;
use feature qw( say );

use Devel::MAT;

my $df = Devel::MAT->load( $ARGV[0] // die "Need dumpfile\n" )->dumpfile;

my %orphans;
foreach my $sv ( $df->heap ) {
   $orphans{$sv->addr} = $sv unless $sv->inrefs;
}

foreach my $addr ( sort keys %orphans ) {
   say $orphans{$addr}->desc_addr;
}
