Access outer type from companion

Hello,
I frequently find myself writing code like this:

class Doc(
	// ...    
): IDoc {
	companion object : IDocCompanion<Doc>(Doc::class)
}

This pattern is also used often in standard library, for example check CoroutineName etc.

Can we make it possible to access outer type from companion like this:

class Doc(
	// ...    
): IDoc {
	companion object : IDocCompanion<Outer>(Outer::class)
}

This would make it much easier to copy/paste code, and would avoid bugs. It should work on the compiler level.

Thoughts?