1# -*- mode: perl; -*- 2 3use strict; 4use warnings; 5 6# Test 2 levels of upgrade classes. This used to cause a segv. 7 8use Test::More tests => 1; 9 10use Math::BigInt upgrade => 'Math::BigFloat'; 11use Math::BigFloat upgrade => 'Math::BigMouse'; 12 13no warnings 'once'; 14@Math::BigMouse::ISA = 'Math::BigFloat'; 15sub Math::BigMouse::bsqrt {}; 16 17() = sqrt Math::BigInt->new(2); 18pass('sqrt on a big int does not segv if there are 2 upgrade levels'); 19