php  IHDRwQ)Ba pHYs  sRGBgAMA aIDATxMk\Us&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨG;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j-$_q?qSXzG'ay

PAL.C.T MINI SHELL
files >> /opt/php-7.0.1/Zend/tests/traits/
upload
files >> //opt/php-7.0.1/Zend/tests/traits/bug55424.phpt

--TEST--
Bug #55424 (Method got missing from class when a trait defined an abstract method to express a requirement)
--FILE--
<?php

	trait ATrait
	{
		function setRequired()
		{
			$this->setAttribute();
		}

		abstract function setAttribute();
	}	

	class Base
	{
		function setAttribute() { }
	}

	class MyClass extends Base
	{
		use ATrait;
	}

	$i = new Base();
	$i->setAttribute();

	$t = new MyClass();
	/* setAttribute used to disappear for no good reason. */
	$t->setRequired();
	echo 'DONE';
?>
--EXPECT--
DONE
y~or5J={Eeu磝QkᯘG{?+]ן?wM3X^歌>{7پK>on\jyR g/=fOroNVv~Y+NGuÝHWyw[eQʨSb>>}Gmx[o[<{Ϯ_qF vMIENDB`