Add more whitespace around #pragma
Add explanatory comment to #pragma.
Add compile-only DeepHierarchy test.
Fix when abstract derives from abstract.

Discovered when porting the AbstractClassFamilies test.