2 include files: [A.inc] [B.inc] If A.inc is included before B.inc, then A is in EG(class_table) already and early binding kicks in leaving us with an op_array for B.inc containing: INCLUDE_OR_EVAL NOP NOP RETURN ZEND_HANDLE_EXCEPTION And if B.inc is included before A.inc, then B.inc compiles to: INCLUDE_OR_EVAL ZEND_FETCH_CLASS ZEND_DECLARE_INHERITED_CLASS RETURN ZEND_HANDLE_EXCEPTION