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