Before I can start actually fixing the TAGS target, I figured making it run under win32 at all would help :)
The problem is that with parallel="true", ant seems to send too many parameters to CreateProcess, which then sobs about error=87: the parameter is invalid.
The attached patch addresses this issue by specifying maxparallel to prevent argument list overflow, and appending the results to the TAGS file incrementally. This results in two invokations to etags, rather than one.
Does this behave as expected for you Mark?
Cheers, Matt