// Contributed by Dodji Seketeli // Origin PR c++/40866 // { dg-options "-std=gnu++98" } // { dg-do compile } template class QForeachContainer { public: QForeachContainer(); int brk; typename T::const_iterator i; }; template class QList { public: class const_iterator { public: const_iterator(const const_iterator &o); const_iterator &operator++(); }; }; class QAction; class QWidget { public: QList actions() const; }; class myDialog : public QWidget { myDialog(); }; myDialog::myDialog() { QForeachContainer<__typeof__(actions())> _container_; ({++_container_.brk; ++_container_.i;}); }