Ok, I finally had a look at the patch.
It seems ok, except for the change to lyxstring.
The only question that is relevant is: What does the standard say?
The standard does not use const_iterator, actually in the standard
this constructor is a member template
template<InputIterator>
basic_string(InputIterator begin, InputIterator end, ..allocator...);
but since we do not support that with our impl. I decided to use plain
iterator instead. I think we leave them non const and when we dare to
we make this constructor into a member template.
Lgb