Doesn't the standard specify the signature as: [font="Courier New"]void resize(size_type sz, T c = T()) [/font]?
[quote name='TheUnbeliever' timestamp='1317696821' post='4868817']MSVC (9 and 10, at least) both pass resize's _Val parameter by value, not const reference.
On my current project, the 3 different compilers that we use all comply with the above signature.
[/quote]
I don't have access to a copy of the standard, so I can't honestly say. It's entirely plausible. In that case, maybe the word 'fault' isn't right to use, certainly not of the library. My point was really just that the combination of library and compiler mean that writing a custom allocator is insufficient to solve the problem - you must also patch vector to take a const reference. This was definitely the case with MSVC9. The library in 10 has stuck with the same signature, but perhaps the compiler allows alignment of function parameters. I can't remember if I've tried.
So, yeah - perhaps my wording is a little strong, but there's at least one additional problem which we don't have enough information (define 'incompatible', and which development environment are we using) to rule out. :o)