When using iterator classes on x64 platforms, the folowing warning is issued by the compiler:
qt-4.8.5\include\qtcore\qlist.h(262) : warning C4244: 'return' : conversion from '__int64' to 'int', possible loss of data
At this location is defined the operator-(iterator) which returns the difference between 2 pointers as an int.
You typedef a difference_type in iterator class definition, which is basically equal to the size of a pointer. Returning this instead of an int should be enough to fix the problem.
Note that all containers seem to be affected.