Bugfix: Only construct phantom fields at the top of the class hierarchy or when reaching a phantom class