Just a matter of taste, but I think we tend to avoid `if/else` returning `true`/`false`, instead going for something like:

```scala
def addReferrer(sym: Symbol): Unit = {
  debuglog(s"$symbol indirectly refers to 'this'")
  referrers += symbol
}

(
     referrers(symbol)
  || (methodReferringMap(symbol) exists refersToThis) && { addReferrer; true }
)
```