added compile-time check to disallow extending non-marker interfaces