krakjoe / componere

Complex Type Composition and Manipulation

Home Page:http://docs.php.net/intro.componere

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error: Class 0x01 not found" if Definition( 'MyDerived', 'MyClass' )

ASchmidt1 opened this issue · comments

Attached sample worked in previous PHP releases, up to current 7.3. However, it fails with 7.4.2. Therefore, I'm unable to move my project to PHP 7.4.

For an EXISTING class 'MyClass'

$myDef = new \Componere\Definition( 'MyDerived', 'MyClass' );
$myDef->addTrait( 'MyTrait' );		--> Error in PHP 7.4.2: Class '' not found

where the classname is being reported as 0x01.

Interestingly, for a truly NON-existing class 'NoSuchClass':

$myDef = new \Componere\Definition( 'MyDerived', 'NoSuchClass' );
$myDef->addTrait( 'MyTrait' );		

neither the constructor NOR the addTrait() will detect the invalid classname!? Of course the resulting derived class is utterly useless.
comp74z.txt

I can confirm this, same issue here.