which compilers do we want to support with KDE 4 ?

Alexander Neundorf neundorf at kde.org
Sat Jan 21 12:07:02 GMT 2006


On Saturday 21 January 2006 11:58, Nicolas Goutte wrote:
> On Saturday 21 January 2006 11:32, Alexander Neundorf wrote:
> > Hi,
> >
> > up to KDE 3.5 we still supported gcc 2.95, AFAIK this was dropped for KDE
> > 4.
> >
> > Now I have major problems compiling kdelibs/kxmlcore/ using gcc 3.2.3,
> > IOW gcc 3.2.3 isn't able to compile HashMap/HashTable/HashMapPtrSpec
> > without bigger changes. I already got a bit further but now I get an
> > internal compiler error.
> > AFAIK this is code from Apple, which use gcc >= 4.0.
> > Do we want to support gcc < 3.4 for KDE 4 ?
> The higher you put the limit the lesser developers you will get. (And it is
> not that we have plenty of developers everywhere in KDE.)

I think so too.

I got it compiling with the attached patch, but it won't work.
The fix to wrap extractFirst() into a struct seems to be a know problem with 
gcc 3.2: http://bugzilla.gnome.org/show_bug.cgi?id=168261

The other problems seem to be problems where gcc has problems to return 
template stuff like .e.g. std::pair<template stuff>. In some cases (e.g. 
insert()) I solved this this way:

-std::pair<something> HashMap::set(Foo foo);
+void HashMap::set(Foo foo, std::pair<something>* result);

and returning the result via the pointer.
The same problem occured with HashTable::lookup(), but there I simply 
commented the stuff out to just make it compile. HashTable::extractKey() also 
has a problem.

Changing all the function which return template stuff to use pointers for 
their results is not especially nice. I am also not sure the Apple guys will 
be interested in ugly code to support gcc < 4.0.

So, how to proceed ?

Work: alexander.neundorf AT jenoptik.com - http://www.jenoptik-los.de
Home: neundorf AT kde.org                - http://www.kde.org
      alex AT neundorf.net               - http://www.neundorf.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kxmlcore.gcc3.2.diff
Type: text/x-diff
Size: 10669 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20060121/eed47fa6/attachment.diff>

More information about the kde-core-devel mailing list