- lyxerr << "InsetCache contains:" << std::endl;
- for (CoordCacheBase<Inset>::cache_type::const_iterator it = getInsets().getData().begin(); it != getInsets().getData().end(); ++it) {
- Inset const * inset = it->first;
- Point const p = it->second.pos;
- lyxerr << "Inset " << inset << "(" << to_utf8(inset->name())
- << ") has point " << p.x_ << "," << p.y_ << std::endl;
+ if (getInsets().data_.empty()) {
+ LYXERR0("InsetCache is empty.");
+ return;
+ }
+
+ LYXERR0("InsetCache contains:");
+ for (auto const & ccd : getInsets().data_) {
+ // Warning: it is not guaranteed that inset is a valid pointer
+ // (therefore it has type 'void *') (see bug #7376).
+ void const * inset = ccd.first;
+ Point const p = ccd.second.pos;
+ LYXERR0("Inset " << inset << " has point " << p.x_ << "," << p.y_);