cf. the `icUnit` comment, [added at your behest](https://github.com/scala-ide/scala-ide/pull/319/files#r3119328) :

>   * @note This member is a def, not a lazy val, to avoid doc/reconciler
>   * desynchronizations if the underlying document is swapped.
>   *  (see https://github.com/scala-ide/scala-ide/pull/309#discussion_r3048592)

I /could/ dereference `icUnit ` to make sure I have the same one for every call in this method, but this would lead to the confusing update of a potentially outdated unit by the time I'm finished. The only safe way I see to do this is to make the compiler itself /update/ the pointer to its unit. And perhaps not even that.