Steps to reproduce:
- Open the attached project and let it finish importing
- Create an empty GameObject in the scene and add the SimpleStats component to it
- Select the GameObject and look at the Inspector window
- Then, with the GameObject still selected, edit and save any script (or right-click a script > Reimport) to trigger a script recompile / Domain reload
Actual results: At step 3, CreateInspectorGUI re-enters itself hundreds of times (the editor constructs an InspectorElement for the same SerializedObject, which builds the same custom editor again) until a StackOverflowException is thrown; the Console shows the exception with a deep binding stack that does not name the recursion, and the component's Inspector is broken. At step 4, in larger projects the Editor process can TERMINATE SILENTLY roughly half a minute after the reload - no crash dump is written, the Bug Reporter does not appear, and the Editor.log simply ends (three occurrences across two projects during testing; the attached blank project reliably shows the exception but survived the reload step - the termination appears to depend on accumulated editor state, with larger projects more exposed; full logs of all three terminations attached)
Expected results: InspectorElement detects the re-entrancy cycle (building an InspectorElement for a SerializedObject whose editor is already being built) and fails gracefully with a clear diagnostic naming the offending editor type - for example suggesting InspectorElement.FillDefaultInspector - instead of recursing to a StackOverflowException and risking silent Editor termination.
Reproducible with versions: 6000.0.0f1, 6000.0.83f1, 6000.3.24f1, 6000.5.11f1, 6000.6.1f1, 6000.7.0a6
Tested on (OS): Windows 11