Can't restrict <!--more--> or anything before it

For example,
ABC [s2If current_user_can(access_s2member_level0)] DEF <!--more--> GHI [/s2If]
I've noticed this returns "ABC DEF Read the rest of this post..." for non-logged in users. If I remove <!--more--> non-logged in users get only ABC.
Why is <!--more--> breaking any restrictions before and including the <!--more--> itself? "More" is critically important for controlling long posts and it's also a good point to start restricting content. I want place various restrictions immediately before <!--more--> but they don't have any effect. Is there a work-around or am I missing something??
ABC [s2If current_user_can(access_s2member_level0)] DEF <!--more--> GHI [/s2If]
I've noticed this returns "ABC DEF Read the rest of this post..." for non-logged in users. If I remove <!--more--> non-logged in users get only ABC.
Why is <!--more--> breaking any restrictions before and including the <!--more--> itself? "More" is critically important for controlling long posts and it's also a good point to start restricting content. I want place various restrictions immediately before <!--more--> but they don't have any effect. Is there a work-around or am I missing something??