Spirit siphon is not able to target Roshan, or a unit which is already affected by Spirit Siphon.

However, it still allows targeting those units. It gives the error message after doing so. It should make the checks when mousing over those targets, and not after only after clicking on the target.

Compare it to other spells which can't target Roshan (e.g. Infest), or compare it to targeting a spell immune unit. The targeting check for these happen when mousing over them already.