Thanks for your suggestion.
I agree with you that each is special.
According to chromatic's explanation, delete belongs to "weak keywords', and each doesn't.
By the way, I'm not sure how to add a BEGIN block to my code.
Would you please attach your code?

Thanks for your explanation. That makes sense.
If I added a BEGIN block to the end of my code, 'Ambiguous call' warning would appear before the block was executed, right?
Your code shows that warnings pragma complains about each %person at the compile phase. Thanks a lot :)