Hi Mike,
This problem is now fixed in the official RC6 version (build 1012). I have identified the exact location of this exception, but I've been unable to find a logical path that generates it. From my experience, this smells like a VC++ compiler bug. So the exception still happens, but since it is actually harmless, I eat it silently with an extra try {} catch ( ... ) {} construct. I'll investigate different compiler optimization options to see if the exception disappears 'magically', as usual with VC++ bugs. Obviously, this problem only happens on Windows, which supports the hypothesis of a compiler bug.
Thank you for your test data, which has been extremely useful, as always.