Sample file (one line, cursor position on the closing paren):
macro that works: X%wdw
macro that fails: X%wdaaudw
Both macros have identical results when executed manually, but the latter one fails when executed as a macro. The only difference between the macros is the daau, which performs the arg deletion and then undoes it.
I can confirm this issue. I'll have to investigate further on how this can be fixed.
I found a recent bug report on vim_dev that may be related to this issue. Apart from this I sat down today and had a look at this issue but so far I have made no headway.