Are we in a secondary constructor after the this constructor call?
To selectively allow enrichment in patterns, where other kinds of implicit conversions are not allowed
TODO: The "sticky modes" are EXPRmode, PATTERNmode, TYPEmode.
Are we typechecking pattern alternatives.
Are we retypechecking arguments independently from the function applied to them? See
TODO - iron out distinction/overlap with SecondTry.
Are we in return position? Formerly RETmode.
For method context: were returns encountered?
Is this context (enclosed in) a constructor call? (the call to the super or self constructor in the first line of a constructor.) In such a context, the object's fields should not be in scope
Are star patterns allowed.
Are we typing the "super" in a superclass constructor call super.<init>.
Are unapplied type constructors allowed here? Formerly HKmode.