Tillbaka till svenska Fidonet
English   Information   Debug  
IC   0/2851
INTERNET   0/424
INTERUSER   0/3
IP_CONNECT   719
JAMNNTPD   0/233
JAMTLAND   0/47
KATTY_KORNER   0/41
LAN   0/16
LINUX-USER   0/19
LINUXHELP   0/1155
LINUX   8249/22112
LINUX_BBS   0/957
mail   18.68
mail_fore_ok   249
MENSA   0/341
MODERATOR   0/102
MONTE   0/992
MOSCOW_OKLAHOMA   0/1245
MUFFIN   0/783
MUSIC   0/321
N203_STAT   930
N203_SYSCHAT   313
NET203   321
NET204   69
NET_DEV   0/10
NORD.ADMIN   0/101
NORD.CHAT   0/2572
NORD.FIDONET   189
NORD.HARDWARE   0/28
NORD.KULTUR   0/114
NORD.PROG   0/32
NORD.SOFTWARE   0/88
NORD.TEKNIK   0/58
NORD   0/453
OCCULT_CHAT   0/93
OS2BBS   0/787
OS2DOSBBS   0/580
OS2HW   0/42
OS2INET   0/37
OS2LAN   0/134
OS2PROG   0/36
OS2REXX   0/113
OS2USER-L   207
OS2   0/4786
OSDEBATE   0/18996
PASCAL   0/490
PERL   0/457
PHP   0/45
POINTS   0/405
POLITICS   0/29554
POL_INC   0/14731
PSION   103
R20_ADMIN   1123
R20_AMATORRADIO   0/2
R20_BEST_OF_FIDONET   13
R20_CHAT   0/893
R20_DEPP   0/3
R20_DEV   399
R20_ECHO2   1379
R20_ECHOPRES   0/35
R20_ESTAT   0/719
R20_FIDONETPROG...
...RAM.MYPOINT
  0/2
R20_FIDONETPROGRAM   0/22
R20_FIDONET   0/248
R20_FILEFIND   0/24
R20_FILEFOUND   0/22
R20_HIFI   0/3
R20_INFO2   3250
R20_INTERNET   0/12940
R20_INTRESSE   0/60
R20_INTR_KOM   0/99
R20_KANDIDAT.CHAT   42
R20_KANDIDAT   28
R20_KOM_DEV   112
R20_KONTROLL   0/13300
R20_KORSET   0/18
R20_LOKALTRAFIK   0/24
R20_MODERATOR   0/1852
R20_NC   76
R20_NET200   245
R20_NETWORK.OTH...
...ERNETS
  0/13
R20_OPERATIVSYS...
...TEM.LINUX
  0/44
R20_PROGRAMVAROR   0/1
R20_REC2NEC   534
R20_SFOSM   0/341
R20_SF   0/108
R20_SPRAK.ENGLISH   0/1
R20_SQUISH   107
R20_TEST   2
R20_WORST_OF_FIDONET   12
RAR   0/9
RA_MULTI   106
RA_UTIL   0/162
REGCON.EUR   0/2056
REGCON   0/13
SCIENCE   0/1206
SF   0/239
SHAREWARE_SUPPORT   0/5146
SHAREWRE   0/14
SIMPSONS   0/169
STATS_OLD1   0/2539.065
STATS_OLD2   0/2530
STATS_OLD3   0/2395.095
STATS_OLD4   0/1692.25
SURVIVOR   0/495
SYSOPS_CORNER   0/3
SYSOP   0/84
TAGLINES   0/112
TEAMOS2   0/4530
TECH   0/2617
TEST.444   0/105
TRAPDOOR   0/19
TREK   0/755
TUB   0/290
UFO   0/40
UNIX   0/1316
USA_EURLINK   0/102
USR_MODEMS   0/1
VATICAN   0/2740
VIETNAM_VETS   0/14
VIRUS   0/378
VIRUS_INFO   0/201
VISUAL_BASIC   0/473
WHITEHOUSE   0/5187
WIN2000   0/101
WIN32   0/30
WIN95   0/4289
WIN95_OLD1   0/70272
WINDOWS   0/1517
WWB_SYSOP   0/419
WWB_TECH   0/810
ZCC-PUBLIC   0/1
ZEC   4

 
4DOS   0/134
ABORTION   0/7
ALASKA_CHAT   0/506
ALLFIX_FILE   0/1313
ALLFIX_FILE_OLD1   0/7997
ALT_DOS   0/152
AMATEUR_RADIO   0/1039
AMIGASALE   0/14
AMIGA   0/331
AMIGA_INT   0/1
AMIGA_PROG   0/20
AMIGA_SYSOP   0/26
ANIME   0/15
ARGUS   0/924
ASCII_ART   0/340
ASIAN_LINK   0/651
ASTRONOMY   0/417
AUDIO   0/92
AUTOMOBILE_RACING   0/105
BABYLON5   0/17862
BAG   135
BATPOWER   0/361
BBBS.ENGLISH   0/382
BBSLAW   0/109
BBS_ADS   0/5290
BBS_INTERNET   0/507
BIBLE   0/3563
BINKD   0/1119
BINKLEY   0/215
BLUEWAVE   0/2173
CABLE_MODEMS   0/25
CBM   0/46
CDRECORD   0/66
CDROM   0/20
CLASSIC_COMPUTER   0/378
COMICS   0/15
CONSPRCY   0/899
COOKING   33431
COOKING_OLD1   0/24719
COOKING_OLD2   0/40862
COOKING_OLD3   0/37489
COOKING_OLD4   0/35496
COOKING_OLD5   9370
C_ECHO   0/189
C_PLUSPLUS   0/31
DIRTY_DOZEN   0/201
DOORGAMES   0/2065
DOS_INTERNET   0/196
duplikat   6002
ECHOLIST   0/18295
EC_SUPPORT   0/318
ELECTRONICS   0/359
ELEKTRONIK.GER   1534
ENET.LINGUISTIC   0/13
ENET.POLITICS   0/4
ENET.SOFT   0/11701
ENET.SYSOP   33946
ENET.TALKS   0/32
ENGLISH_TUTOR   0/2000
EVOLUTION   0/1335
FDECHO   0/217
FDN_ANNOUNCE   0/7068
FIDONEWS   24159
FIDONEWS_OLD1   0/49742
FIDONEWS_OLD2   0/35949
FIDONEWS_OLD3   0/30874
FIDONEWS_OLD4   0/37224
FIDO_SYSOP   12852
FIDO_UTIL   0/180
FILEFIND   0/209
FILEGATE   0/212
FILM   0/18
FNEWS_PUBLISH   4436
FN_SYSOP   41708
FN_SYSOP_OLD1   71952
FTP_FIDO   0/2
FTSC_PUBLIC   0/13615
FUNNY   0/4886
GENEALOGY.EUR   0/71
GET_INFO   105
GOLDED   0/408
HAM   0/16075
HOLYSMOKE   0/6791
HOT_SITES   0/1
HTMLEDIT   0/71
HUB203   466
HUB_100   264
HUB_400   39
HUMOR   0/29
Möte LINUX, 22112 texter
 lista första sista föregående nästa
Text 5532, 273 rader
Skriven 2006-03-20 21:55:00 av Paul Rogers (1:105/360.0)
Ärende: c++ help needed
=======================
I don't speak c++.  My mother tongue was FORTRAN-II ferchrissakes!
I need help.

I've been building a new LFS-6.1 system.  Compared to my LFS-4.1, it
upgrades the compiler from 3.2.1 to 3.4.3.  I'm trying to compile
KDE-3.1, but keep running into errors.  (It worked with GCC-3.2.1!)  So
far most have been extraneous semicolons after some braces.  I've been
removing them as the new compiler insisted, thinking I could then
generate a proper patch set, not available at kde.org.  Then I got this:
**************
Making all in .
make[3]: Entering directory `/usr/local/src/lfs-6.1/pallas/kdelibs-3.1/kdecore'
/bin/sh ../libtool --silent --mode=compile --tag=CXX g++ -DHAVE_CONFIG_H -I. \
-I. -I.. -I../kdefx -I../dcop -I../libltdl -I../kdecore -I../kdeui -I../kio \
-I../kio/kio -I../kio/kfile -I.. -I/usr/local/qt/include -I/usr/X11R6/include \
-I/usr/local/kde-3.1/include  -I/usr/local/include/libart-2.0 \
-DQT_THREAD_SUPPORT  -D_REENTRANT   -Wnon-virtual-dtor -Wno-long-long -Wundef \
-Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -ansi \
-D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -DNDEBUG \
-DNO_DEBUG -O2 -fno-exceptions -fno-check-new  -DQT_NO_TRANSLATION \
-DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_COMPAT  -c -o kcompletion.lo \
`test -f 'kcompletion.cpp' || echo './'`kcompletion.cpp
cc1plus: warning: command line option "-Wmissing-prototypes" is valid for C/Ob
jC but not for C++
In file included from kcompletion.h:31,
                 from kcompletion.cpp:27:
./ksortablevaluelist.h: In member function `KSortableItem<T, Key>& KSortableIt
em<T, Key>::operator=(const KSortableItem<T, Key>&)':
./ksortablevaluelist.h:56: error: `first' undeclared (first use this function)
./ksortablevaluelist.h:56: error: (Each undeclared identifier is reported only
 once for each function it appears in.)
./ksortablevaluelist.h:57: error: `second' undeclared (first use this function)
./ksortablevaluelist.h: In member function `bool KSortableItem<T, Key>::operato
r>(const KSortableItem<T, Key>&) const':
./ksortablevaluelist.h:67: error: `first' undeclared (first use this function)
./ksortablevaluelist.h: In member function `bool KSortableItem<T, Key>::operato
r<(const KSortableItem<T, Key>&) const':
./ksortablevaluelist.h:74: error: `first' undeclared (first use this function)
./ksortablevaluelist.h: In member function `bool KSortableItem<T, Key>::operato
r>=(const KSortableItem<T, Key>&) const':
./ksortablevaluelist.h:81: error: `first' undeclared (first use this function)
./ksortablevaluelist.h: In member function `bool KSortableItem<T, Key>::operato
r<=(const KSortableItem<T, Key>&) const':
./ksortablevaluelist.h:88: error: `first' undeclared (first use this function)
./ksortablevaluelist.h: In member function `bool KSortableItem<T, Key>::operato
r==(const KSortableItem<T, Key>&) const':
./ksortablevaluelist.h:95: error: `first' undeclared (first use this function)
./ksortablevaluelist.h: In member function `bool KSortableItem<T, Key>::operato
r!=(const KSortableItem<T, Key>&) const':
./ksortablevaluelist.h:102: error: `first' undeclared (first use this function)
./ksortablevaluelist.h: In member function `T& KSortableItem<T, Key>::value()':
./ksortablevaluelist.h:110: error: `second' undeclared (first use this
function)
./ksortablevaluelist.h: In member function `const T& KSortableItem<T, Key>::val
ue() const':
./ksortablevaluelist.h:117: error: `second' undeclared (first use this
function)
./ksortablevaluelist.h: In member function `Key KSortableItem<T, Key>::index()
const':
./ksortablevaluelist.h:125: error: `first' undeclared (first use this function)
make[3]: *** [kcompletion.lo] Error 1
make[3]: Leaving directory `/usr/local/src/lfs-6.1/pallas/kdelibs-3.1/kdecore'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/local/src/lfs-6.1/pallas/kdelibs-3.1/kdecore'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/lfs-6.1/pallas/kdelibs-3.1'
make: *** [all] Error 2
**************
Here's ksortablevaluelist.h:
**************
/* This file is part of the KDE libraries
    Copyright (C) 2001 Carsten Pfeiffer <pfeiffer@kde.org>

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Library General Public
    License as published by the Free Software Foundation; either
    version 2 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    Library General Public License for more details.

    You should have received a copy of the GNU Library General Public License
    along with this library; see the file COPYING.LIB.  If not, write to
    the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.
*/

#ifndef KSORTABLEVALUELIST_H
#define KSORTABLEVALUELIST_H

#include <qpair.h>
#include <qvaluelist.h>

/**
 * KSortableItem is a @ref QPair that provides several operators
 * for sorting.
 * @see KSortableValueList
 */
template<class T, class Key = int> class KSortableItem : public QPair<Key,T>
{
public:
    /**
     * Creates a new KSortableItem with the given values.
     * @param i the first value
     * @param t the second value
     */
    KSortableItem( Key i, const T& t ) : QPair<Key, T>( i, t ) {}
    /**
     * Creates a new KSortableItem that copies another one.
     * @param rhs the other item to copy
     */
    KSortableItem( const KSortableItem<T, Key> &rhs ) 
        : QPair<Key,T>( rhs.first, rhs.second ) {}

    /**
     * Creates a new KSortableItem with uninitialized values.
     */
    KSortableItem() {}

    /**
     * Assignment operator, just copies the item.
     */
    KSortableItem<T, Key> &operator=( const KSortableItem<T, Key>& i ) {
        first  = i.first;
        second = i.second;
        return *this;
    }

    // operators for sorting
    /**
     * Compares the two items. This implementation only compares
     * the first value.
     */
    bool operator> ( const KSortableItem<T, Key>& i2 ) const {
        return (i2.first < first);
    }
    /**
     * Compares the two items. This implementation only compares
     * the first value.
     */
    bool operator< ( const KSortableItem<T, Key>& i2 ) const {
        return (first < i2.first);
    }
    /**
     * Compares the two items. This implementation only compares
     * the first value.
     */
    bool operator>= ( const KSortableItem<T, Key>& i2 ) const {
        return (first >= i2.first);
    }
    /**
     * Compares the two items. This implementation only compares
     * the first value.
     */
    bool operator<= ( const KSortableItem<T, Key>& i2 ) const {
        return !(i2.first < first);
    }
    /**
     * Compares the two items. This implementation only compares
     * the first value.
     */
    bool operator== ( const KSortableItem<T, Key>& i2 ) const {
        return (first == i2.first);
    }
    /**
     * Compares the two items. This implementation only compares
     * the first value.
     */
    bool operator!= ( const KSortableItem<T, Key>& i2 ) const {
        return (first != i2.first);
    }

    /**
     * Returns the second value.
     * @return the second value
     */
    T& value() {
        return second;
    }

    /**
     * Returns the second value.
     */
    const T& value() const {
        return second;
    }

    /**
     * Returns the first value.
     * @param the first value
     */
    Key index() const {
        return first;
    }
};


/**
 * KSortableValueList is a special @ref QValueList for 
 * @ref KSortableItem. It includes convenience operators
 * to get the first value of the KSortableItem and a method
 * to sort all items.
 */
template <class T, class Key = int>
class KSortableValueList : public QValueList<KSortableItem<T, Key> >
{
public:
    /**
     * Insert a KSortableItem with the given values.
     * @param i the first value
     * @param t the second value
     */
    void insert( Key i, const T& t ) {
        QValueList<KSortableItem<T, Key> >::append( KSortableItem<T, Key>( i, t
) );
    }
    // add more as you please...

    /**
     * Returns the first value of the KSortableItem at the given position.
     * @return the first value of the KSortableItem
     */
    T& operator[]( Key i ) {
        return QValueList<KSortableItem<T, Key> >::operator[]( i ).value();
    }

    /**
     * Returns the first value of the KSortableItem at the given position.
     * @return the first value of the KSortableItem
     */
    const T& operator[]( Key i ) const {
        return QValueList<KSortableItem<T, Key> >::operator[]( i ).value();
    }

    /**
     * Sorts the KSortableItems.
     */
    void sort() {
        qHeapSort( *this );
    }
};

// template <class T> class KSortableValueListIterator : public
QValueListIterator<KSortableItem<T>  >
// {
// };

#endif // KSORTABLEVALUELIST_H
**************

Knowing nothing about c++, but having done a few over the years, I'm
guessing GCC-3.4.3 changed the acceptable way of referencing an array?
It may just postpone the inevitable, but what's the correct syntax?  i.1?

Is there a compatibility option perhaps?  Can the compiler be persuaded?

(To upgrade to a newer version of KDE, I'd also have to upgrade QT, and
no doubt other dependencies.  Newer versions, more "features", more
code, slower; I'd like to avoid that.  I suppose it's possible to
install the GCC-3.2.1 to compile KDE, but that's not something I feel
confident about.)

Paul Rogers, paulgrogers@yahoo.com                       -o)
http://www.angelfire.com/or/paulrogers                   /\\
Rogers' Second Law: Everything you do communicates.     _\_V

... Real programmers can write FORTRAN in ANY language.
___ MultiMail/MS-DOS v0.35

---
 * Origin: The Bare Bones BBS (1:105/360)