iirc, C2 doesn't compile empty events.
However, I agree with making it easier to sift through stuff to clear it up, especially sprites that do not exist on any layout- However, I do believe It may be a difficult glitchy thing to detect certain thing-
Say we have the sound file, "Enemy1_Hit.ogg", and a Sprite with a variable called "Name" (which would be set to "Enemy1")
Now, the sound is currently not being used in events. Now say we do a "Play sound" action, which isn't directly pointing to the "Enemy1_Hit.ogg" file, but rather [Sprite.Name & "_Hit"]. That would mean the sound would play correctly, yes; but the sound isn't directly being pointed at in the events- therefore, how would such a tool be designed to automatically "know" if the sound would be used or not when it's not directly used? Aha