Trex illegal? overlapping instances for derived classes -- is this intended?