3v4l.org

run code in 300+ PHP versions simultaneously
<?php abstract class ParentClass { abstract public function parentMethod(int $param): bool; } trait MyTrait { abstract public function traitMethod($param): bool; } class ChildClass extends ParentClass { use MyTrait; // implementation of the abstract methods public function parentMethod(int $param): bool { // change parent method parameter type // implementation } public function traitMethod(int $param): bool { // change trait method parameter type // implementation } }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/7sid7
function name:  (null)
number of ops:  2
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   11     0  E >   DECLARE_CLASS                                            'childclass', 'parentclass'
   25     1      > RETURN                                                   1

Class ParentClass:
Function parentmethod:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/7sid7
function name:  parentMethod
number of ops:  3
compiled vars:  !0 = $param
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   RECV                                             !0      
          1        VERIFY_RETURN_TYPE                                       
          2      > RETURN                                                   null

End of function parentmethod

End of class ParentClass.

Class MyTrait:
Function traitmethod:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/7sid7
function name:  traitMethod
number of ops:  3
compiled vars:  !0 = $param
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    8     0  E >   RECV                                             !0      
          1        VERIFY_RETURN_TYPE                                       
          2      > RETURN                                                   null

End of function traitmethod

End of class MyTrait.

Class ChildClass:
Function parentmethod:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/7sid7
function name:  parentMethod
number of ops:  3
compiled vars:  !0 = $param
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   17     0  E >   RECV                                             !0      
   19     1        VERIFY_RETURN_TYPE                                       
          2      > RETURN                                                   null

End of function parentmethod

Function traitmethod:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/7sid7
function name:  traitMethod
number of ops:  3
compiled vars:  !0 = $param
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   22     0  E >   RECV                                             !0      
   24     1        VERIFY_RETURN_TYPE                                       
          2      > RETURN                                                   null

End of function traitmethod

End of class ChildClass.

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
237.01 ms | 1003 KiB | 13 Q