[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Source update 2



Ok, the stuff compiles surprisingly well. The only errors I still get are
(1) caused by the Hastable iterator not being used (the OpenDir.cpp
messages)
(2) caused by the PakFileDir etc constructors not being completely in
place, acused by the missing serialization stuff (the PakFile.cpp /
PakFileDir.cpp messages)
(3) caused by throw () clauses in method prototypes differing between .h
and .cpp (the Directory.* messages)
(4) caused by some float->int assignment in HashTable.cpp

I know only little about this stuff, so I guess it's your turn again,
Bjarke ;) I attached the make output (with the unimportant things removed).

Another thing - g++ gave me errors at occurrences of
     catch (bad_alloc)
in the pp::internal namespace. I had to change it to
     catch (std::bad_alloc)
"using namespace std;"
didn't work. Is that a problem with VC++ (you mentioned some C stdlib
functions not being in the std namespace) ?

The code is in ftp under the usual name.


Anyway, good night :)

	Christian
-- 

Drive A: not responding...Formatting C: instead
/bin/sh ../../libtool --mode=compile c++ -DHAVE_CONFIG_H -I. -I. -I../../include/PenguinPlay -I../../include    -g -O2 -c Directory.cpp
mkdir .libs
c++ -DHAVE_CONFIG_H -I. -I. -I../../include/PenguinPlay -I../../include -g -O2 -Wp,-MD,.deps/Directory.pp -c  -fPIC -DPIC Directory.cpp -o .libs/Directory.lo
Directory.cpp:160: declaration of `pp::internal::Directory::Add(pp::internal::Directory *)' throws different exceptions
Directory.h:88: previous declaration here
Directory.cpp:172: declaration of `pp::internal::Directory::Add(pp::internal::File *)' throws different exceptions
Directory.h:89: previous declaration here
Directory.cpp:184: declaration of `pp::internal::Directory::Add(pp::internal::DirEntry *)' throws different exceptions
Directory.h:90: previous declaration here
Directory.cpp:206: declaration of `pp::internal::Directory::RemoveFile(const pp::internal::URLInfo &, int)' throws different exceptions
Directory.h:82: previous declaration here
Directory.cpp:230: declaration of `pp::internal::Directory::RemoveFile(const char *, int)' throws different exceptions
Directory.h:83: previous declaration here
Directory.cpp:244: declaration of `pp::internal::Directory::Misc::GetHashOf(const pp::internal::Directory::Key &)' throws different exceptions
Directory.h:148: previous declaration here
Directory.cpp:255: declaration of `pp::internal::Directory::RemoveDir(const pp::internal::URLInfo &, int)' throws different exceptions
Directory.h:85: previous declaration here
Directory.cpp:279: declaration of `pp::internal::Directory::RemoveDir(const char *, int)' throws different exceptions
Directory.h:86: previous declaration here
Directory.cpp:361: declaration of `pp::internal::Directory::SerializeFrom(FILE *)' throws different exceptions
Directory.h:124: previous declaration here
Directory.cpp:376: declaration of `pp::internal::Directory::SerializeHeaderTo(FILE *) const' throws different exceptions
Directory.h:110: previous declaration here
Directory.cpp:384: declaration of `pp::internal::Directory::SerializeHeaderFrom(FILE *)' throws different exceptions
Directory.h:129: previous declaration here
HashTable.h: In method `void pp::internal::HashTable<pp::internal::Directory *,pp::internal::Directory::Key,unsigned int,pp::internal::Directory::MiscDir>::CreateFromDynTable(pp::internal::DynHashTable<pp::internal::Directory *,pp::internal::Directory::Key,unsigned int,pp::internal::Directory::MiscDir> &, float = 0x000000d0ccccccccccccfe3f)':
Directory.cpp:166:   instantiated from here
HashTable.h:939: warning: initialization to `ppSizeT' from `float'
HashTable.h: In method `void pp::internal::HashTable<pp::internal::File *,pp::internal::Directory::Key,unsigned int,pp::internal::Directory::MiscFile>::CreateFromDynTable(pp::internal::DynHashTable<pp::internal::File *,pp::internal::Directory::Key,unsigned int,pp::internal::Directory::MiscFile> &, float = 0x000000d0ccccccccccccfe3f)':
Directory.cpp:178:   instantiated from here
HashTable.h:939: warning: initialization to `ppSizeT' from `float'
HashTable.h: In method `bool pp::internal::HashTable<pp::internal::Directory *,pp::internal::Directory::Key,unsigned int,pp::internal::Directory::MiscDir>::SerializeFrom(FILE *, float = 0)':
Directory.cpp:392:   instantiated from here
HashTable.h:840: warning: assignment to `ppSizeT' from `float'
HashTable.h: In method `bool pp::internal::HashTable<pp::internal::File *,pp::internal::Directory::Key,unsigned int,pp::internal::Directory::MiscFile>::SerializeFrom(FILE *, float = 0)':
Directory.cpp:393:   instantiated from here
HashTable.h:840: warning: assignment to `ppSizeT' from `float'
make: *** [Directory.lo] Error 1
/bin/sh ../../libtool --mode=compile c++ -DHAVE_CONFIG_H -I. -I. -I../../include/PenguinPlay -I../../include    -g -O2 -c OpenDir.cpp
rm -f .libs/OpenDir.lo
c++ -DHAVE_CONFIG_H -I. -I. -I../../include/PenguinPlay -I../../include -g -O2 -Wp,-MD,.deps/OpenDir.pp -c  -fPIC -DPIC OpenDir.cpp -o .libs/OpenDir.lo
OpenDir.cpp: In function `struct ppfDIR * pp::internal::OpenDirInPak(const pp::internal::URLInfo &)':
OpenDir.cpp:107: no matching function for call to `pp::internal::Directory::GetFirstEntry ()'
OpenDir.cpp: In function `struct ppfDirEntry * pp::internal::ReadDirInPak(ppfDIR *)':
OpenDir.cpp:179: no matching function for call to `pp::internal::DirEntry::GetNext ()'
OpenDir.cpp: In function `void pp::internal::SeekDirInPak(ppfDIR *, int)':
OpenDir.cpp:205: no matching function for call to `pp::internal::DirEntry::GetNext ()'
make: *** [OpenDir.lo] Error 1
/bin/sh ../../libtool --mode=compile c++ -DHAVE_CONFIG_H -I. -I. -I../../include/PenguinPlay -I../../include    -g -O2 -c PakFile.cpp
rm -f .libs/PakFile.lo
c++ -DHAVE_CONFIG_H -I. -I. -I../../include/PenguinPlay -I../../include -g -O2 -Wp,-MD,.deps/PakFile.pp -c  -fPIC -DPIC PakFile.cpp -o .libs/PakFile.lo
PakFile.cpp: In method `bool pp::internal::PakFile::Mount(const pp::internal::URLInfo &, int)':
PakFile.cpp:257: cannot allocate an object of type `pp::internal::PakFileWDir'
PakFile.cpp:257:   since the following virtual functions are abstract:
Directory.h:67: 	class pp::internal::VFSInterface * pp::internal::Directory::GetVFSInterface()
PakFile.cpp:269: no matching function for call to `pp::internal::PakFileDir::PakFileDir (const char *&, pp::internal::PakFile *, ppOffsetT &, int, pp32 &, ppTimeT &, ppTimeT &)'
PakFileDir.h:93: candidates are: pp::internal::PakFileDir::PakFileDir(const char *, int, pp::internal::PakFile *, int, unsigned int, unsigned int)
PakFileDir.h:97:                 pp::internal::PakFileDir::PakFileDir()
PakFileDir.h:111:                 pp::internal::PakFileDir::PakFileDir(const pp::internal::PakFileDir &)
make: *** [PakFile.lo] Error 1
make: Target `all' not remade because of errors.