I notice that gcc 4.9 has the same issue, but that the gcc 4.9 release notes say you should use "gcc-ar" instead of ar to make it work correctly in conjunction with LTO (and similarly "gcc-ranlib" instead of ranlib).
In my testing, it seems to work correctly... so... maybe this bug should be closed?
[It would be nice if this worked correctly with vanilla ar/ranlib of course...]
Thanks,
-Miles