When a problem is described as an optimizer issue, it usually means that the code is making some unsound assumptions that happen to be true when compiling without optimization. Of course it's easier on the programmer's ego to blame it on the compiler...
(I haven't looked at this particular issue; maybe it really is a compiler bug. But the odds are against it.)