When server is expanding macros in a string and detects an unsupported (by location) macro, it increments cursor position in the string and tries to find a token again. This will lead the same token being parsed and 'refused' again and again until the cursor position will reach the token.
Instead of incrementing cursor position by 1 it should be set to the left position of the unsupported token +1. The following patch should fix it, but needs to be carefully evaluated.
Still the real life impact is probably non-existant, as users will not use macros where they are not supported.