Revision e65bae2...

Go back to digest for 9th June 2013

Other in KDE-PIM

Raphael Kubo da Costa committed changes in [kdepimlibs/KDE/4.10] akonadi/resourcebase.h:

Correctly expose that ResourceState is a friend class.

ResourceState is a class that lives in kdepim-runtime and is outside the
Akonadi namespace.

clang < 3.3 and all versions of GCC erroneously consider the friend
declaration in

namespace N {
class C {
friend class A;
};
}

class A {
};

to refer to the class A outside namespace N (technically speaking, this is
item 3 of section 7.3.1.2 of the C++ standard). clang 3.3 fixes this
behavior and makes the build of kdepim-runtime fail.

Fix it by explicitly referring to ::ResourceState in the friend declaration.

Alternatively, we could remove the friend declaration and make
ResourceState::collectionsRetrieved use ImapResource::Append instead of
Akonadi::ResourceBase::Append (since ImapResource also declares
ResourceState as a friend).

REVIEW: 110777

File Changes

Modified 1 files
  • akonadi/resourcebase.h
1 files changed in total