[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Problem compiling kmail/kmmessage.cpp from KDE 3.1.2 on IRIX
From:       Albert Chin <kde-devel () thewrittenword ! com>
Date:       2003-10-07 17:02:14
[Download RAW message or body]

I'm tring to use the IRIX C++ compiler v7.41 to build KDE-3.1.2. I'm
up to the kdenetwork module and have run into the following error
building kmail/kmmessage.cpp:
...
CC -DHAVE_CONFIG_H -I. -I. -I.. -I../libkdenetwork -I../mimelib
-I/opt/TWWfsw/kde31/include -I/opt/TWWfsw/libqt31/include
-I/opt/TWWfsw/jpeg/include -I/opt/TWWfsw/libpng12/include
-I/opt/TWWfsw/libtiff35/include -I/opt/TWWfsw/zlib11/include
-DQT_THREAD_SUPPORT   -DNDEBUG -DNO_DEBUG
-LANG:libc_in_namespace_std=OFF -Wl,-woff,84 -Wl,-woff,85 -woff 1429
-mips4 -r5000 -O1 -OPT:Olimit=0 -DQT_NO_COMPAT -DQT_CLEAN_NAMESPACE
-DQT_NO_ASCII_CAST -DKDE_NO_COMPAT -DKDE_NO_COMPAT_H  -c -o
kmmessage.o `test -f 'kmmessage.cpp' || echo './'`kmmessage.cpp
...
cc-1238 CC: ERROR File = kmreaderwin.h, Line = 50
  The function "KMMimePartTree::itemClicked" is inaccessible.

    friend void KMMimePartTree::itemClicked( QListViewItem* item );
                                ^

cc-1238 CC: ERROR File = kmreaderwin.h, Line = 51
  The function "KMMimePartTree::itemRightClicked" is inaccessible.

    friend void KMMimePartTree::itemRightClicked( QListViewItem* item, const QPoint & );
                                ^
cc-1238 CC: ERROR File = kmreaderwin.h, Line = 52
  The function "KMMimePartTree::slotSaveAs" is inaccessible.

    friend void KMMimePartTree::slotSaveAs();
                                ^

cc-3624 CC: WARNING File = kmfoldernode.h, Line = 57
  function "QObject::setName(const char *)" is hidden by "KMFolderNode::setName"
          -- virtual function override intended?

    void setName(const QString& aName) { mName = aName; }
         ^

cc-1682 CC: WARNING File = kmmsginfo.h, Line = 16
  The overloaded virtual function "KMMsgBase::setDate" is only partially
          overridden in class "KMMsgInfo".

  class KMMsgInfo: public KMMsgBase
        ^

I thought this was a bug in the IRIX C++ compiler so I created a small
test case to duplicate the bug and reported it to SGI:
  class Bar {
  protected:
    void test (int);
  };

  class Foo {
    friend void Bar::test (int num);
  };

According to SGI support, the compiler is correct. Here's what they
said:
  The access rules for friends has changed in the C++ language.
    See section 11.4 paragraph for the relevant information.

    One workaround is to replace
      friend void Bar::tests (int num);
    by
      friend class Bar;

So, how should I fix the above problem?

-- 
albert chin (china@thewrittenword.com)
 
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic