Submitted to http://bugs.gentoo.org/show_bug.cgi?id=124900 http://gcc.gnu.org/gcc-4.0/changes.html: "When declaring a friend class using an unqualified name, classes outside the innermost non-class scope are not searched" But the "using" declarations are in the global level scope, causing the friend declarations to fail, leading to access errors. 2006-07-20 Martin von Gagern --- beecrypt-4.1.2.orig/c++/security/Security.h 2006-07-20 13:55:05.000000000 +0200 +++ beecrypt-4.1.2/c++/security/Security.h 2006-07-20 13:58:18.000000000 +0200 @@ -59,16 +59,16 @@ { friend class AlgorithmParameterGenerator; friend class AlgorithmParameters; - friend class CertificateFactory; - friend class CertPathValidator; - friend class Cipher; - friend class KeyAgreement; + friend class ::CertificateFactory; + friend class ::CertPathValidator; + friend class ::Cipher; + friend class ::KeyAgreement; friend class KeyFactory; friend class KeyPairGenerator; friend class KeyStore; - friend class Mac; + friend class ::Mac; friend class MessageDigest; - friend class SecretKeyFactory; + friend class ::SecretKeyFactory; friend class SecureRandom; friend class Signature; --- beecrypt-4.1.2.orig/c++/beeyond/BeeCertificate.h 2006-07-20 14:57:48.000000000 +0200 +++ beecrypt-4.1.2/c++/beeyond/BeeCertificate.h 2006-07-20 14:58:08.000000000 +0200 @@ -61,7 +61,7 @@ */ class BEECRYPTCXXAPI BeeCertificate : public beecrypt::security::cert::Certificate, public beecrypt::lang::Cloneable { - friend class BeeCertificateFactory; + friend class ::BeeCertificateFactory; public: static const Date FOREVER;