
Hello Ion, I think we have a possible solution: Making size_t/ptrdiff_t always 64 bit makes the same offset_ptr work fine in both environments, and solves similar problems in rb_tree_best_fit as well. We have a prototype working. Can we template the size_t/ptrdiff_t size into offset_ptr? For example: template <class PointedType, class DifferenceType=ptrdiff_t> class offset_ptr; Then all other classes could derive their size_types and difference_types from their pointer type as unsigned/signed std::iterator_traits<pointer_type>::difference_type. Is that ok with you? Cheers, Arno -- Dr. Arno Schödl | aschoedl@think-cell.com Technical Director think-cell Software GmbH | Chausseestr. 8/E | 10115 Berlin | Germany http://www.think-cell.com | phone +49 30 666473-10 | US phone +1 800 891 8091 Amtsgericht Berlin-Charlottenburg, HRB 85229 | European Union VAT Id DE813474306 Directors: Dr. Markus Hannebauer, Dr. Arno Schoedl