gcc doesn't like foreach with const-ref containers

Andreas Pakulat apaku at gmx.de
Wed Sep 5 19:34:41 CEST 2007


On 05.09.07 19:17:20, Andreas Pakulat wrote:
> On 05.09.07 06:30:19, Christian Ehrlicher wrote:
> > Andreas Pakulat schrieb:
> > >Hi,
> > >while compiling kdevelop I got an error on some code in its language
> > >support which compiles fine with gcc 4.2 on linux. (I'm using mingw
> > >suite 5.1.3, i.e. gcc 3.4.5 on win32).
> > >The problem seems to be that findDeclarationsInternal on line 107 in
> > >kdevelop/languages/cpp/duchainbuilder/cppducontext.h has a
> > >const-reference to a QList as parameter. The error (log attached)
> > >indicates that foreach() can't handle such a const-ref list, while doing
> > >the "standard" for( foo::const_iterator it = list.begin()... thing works
> > >fine.
> > >Does anybody know a "better" solution than to use an iterator-loop, or a
> > >reason why this is. Is it maybe a gcc bug?
> > Plz make a testcase for this so I can take a look
> 
> Seems like templates have to be involved as well. See the attached
> main.cpp (just use qmake -project;qmake;make to build).
> 
> As soon as you remove the template from MyTest it compiles fine. Else I
> get that error.

And here's the actual file :)

Andreas

-- 
Today's weirdness is tomorrow's reason why.
		-- Hunter S. Thompson
-------------- next part --------------
A non-text attachment was scrubbed...
Name: main.cpp
Type: text/x-c++src
Size: 426 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-windows/attachments/20070905/54c4ff80/attachment.bin 


More information about the Kde-windows mailing list