[Scummvm-tracker] [ScummVM] #10585: TOOLS: Compiler error in prince engine

Hubert Maier trac at scummvm.org
Mon Jul 2 15:07:34 CEST 2018


#10585: TOOLS: Compiler error in prince engine
----------------------+----------------------------
  Reporter:  raziel-  |      Owner:  (none)
      Type:  defect   |     Status:  new
  Priority:  normal   |  Component:  Engine: Prince
Resolution:           |   Keywords:
      Game:           |
----------------------+----------------------------

Comment (by raziel-):

 Compiling on AmigaOS4 native, yes.
 (config.log is attached)

 (Just a simple ./configure, nothing fancy)
  ./configure
 {{{
 Running ScummVM Tools configure...
 Looking for C++ compiler... g++
 Checking for compiler version... 5.4.0, ok
 found non-gcc compiler version 5.4.0, ok
 Building as C++11... no
 Checking endianness... big
 Type with 1 byte... char
 Type with 2 bytes... short
 Type with 4 bytes... int
 Alignment required... no
 Checking hosttype... amigaos
 Checking if host is POSIX compliant... no
 Checking whether to have a verbose build... no
 Checking for Ogg Vorbis... yes
 Checking for Tremor... no (Ogg Vorbis/Tremor support is mutually
 exclusive)
 Checking for FLAC >= 1.1.3... yes
 Checking for MAD... yes
 Checking for PNG >= 1.2.8... yes
 Checking for zlib... yes
 Checking for FreeType... 2.8.1
 Checking for Boost => 1.32.0... no
 Checking whether iconv.h is present... yes
 Checking whether iconv needs linking against libiconv... no
 Checking signature of iconv... iconv_t, const char **, size_t *, char **,
 size_t *
 Checking for iconv... yes
 Looking for wx-config... none found!

 Creating config.h
 Creating config.mk
 }}}

 (and a simple gmake)
  gmake
 {{{
     C++      engines/cine/decine.o
     LINK     decine
     C++      engines/gob/degob.o
 engines/gob/degob.cpp: In function 'void printInfo(Script&)':
 engines/gob/degob.cpp:225:72: warning: format '%d' expects argument of
 type 'int', but argument 2 has type 'uint32 {aka long unsigned int}'
 [-Wformat=]
    printf("%d, directly embedded in the TOT\n", script.getTotTextCount());
                                                                         ^
 engines/gob/degob.cpp:229:87: warning: format '%X' expects argument of
 type 'unsigned int', but argument 3 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
    printf("%d, starting at 0x%08X\n", script.getTotResCount(),
 script.getTotResOffset());
 ^
     C++      engines/gob/degob_script.o
     C++      engines/gob/degob_script_v1.o
     C++      engines/gob/degob_script_v2.o
     C++      engines/gob/degob_script_v3.o
     C++      engines/gob/degob_script_v4.o
     C++      engines/gob/degob_script_v5.o
     C++      engines/gob/degob_script_v6.o
     C++      engines/gob/degob_script_bargon.o
     C++      engines/gob/degob_script_fascin.o
     C++      engines/gob/degob_script_geisha.o
     C++      engines/gob/degob_script_littlered.o
     C++      tool.o
     C++      engines/scumm/descumm.o
     C++      engines/scumm/descumm6.o
     C++      engines/scumm/descumm-common.o
     C++      engines/scumm/descumm-tool.o
 engines/scumm/descumm-tool.cpp: In function 'int
 skipVerbHeader_V8(byte*)':
 engines/scumm/descumm-tool.cpp:135:40: warning: format '%d' expects
 argument of type 'int', but argument 2 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
    printf("  %2d - %.4X\n", code, offset);
                                         ^
 engines/scumm/descumm-tool.cpp: In function 'void parseHeader()':
 engines/scumm/descumm-tool.cpp:283:58: warning: format '%d' expects
 argument of type 'int', but argument 2 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
     printf("Script# %d\n", READ_LE_UINT32(g_scriptStart+8));
                                                           ^
 engines/scumm/descumm-tool.cpp:291:59: warning: format '%d' expects
 argument of type 'int', but argument 2 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
      printf("Script# %d\n", READ_LE_UINT32(g_scriptStart+8));
                                                            ^
     C++      common/file.o
     C++      common/hashmap.o
     C++      common/md5.o
     C++      common/memorypool.o
     C++      common/str.o
     C++      common/util.o
     C++      sound/adpcm.o
     C++      sound/audiostream.o
     C++      sound/voc.o
     C++      sound/wave.o
     C++      engines/sword2/desword2.o
 engines/sword2/desword2.cpp: In function 'int entry(int, char**)':
 engines/sword2/desword2.cpp:337:40: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
   printf("numScripts = %d\n", numScripts);
                                         ^
 engines/sword2/desword2.cpp:380:41: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
      printf("PUSH local(%d)\n", parameter);
                                          ^
 engines/sword2/desword2.cpp:390:43: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
      printf("POP -> local(%d)\n", parameter);
                                            ^
 engines/sword2/desword2.cpp:396:54: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
      printf("CALL %d, %s\n", value, opcodes[parameter]);
                                                       ^
 engines/sword2/desword2.cpp:401:42: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
      printf("PUSH &local(%d)\n", parameter);
                                           ^
 engines/sword2/desword2.cpp:406:34: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
      printf("PUSH %d\n", parameter);
                                   ^
 engines/sword2/desword2.cpp:410:56: warning: format '%x' expects argument
 of type 'unsigned int', but argument 2 has type 'long int' [-Wformat=]
      printf("IFNOT POP THEN JUMP %04x\n", pc + parameter);
                                                         ^
 engines/sword2/desword2.cpp:415:41: warning: format '%x' expects argument
 of type 'unsigned int', but argument 2 has type 'long int' [-Wformat=]
      printf("JUMP %04x\n", pc + parameter);
                                          ^
 engines/sword2/desword2.cpp:428:60: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
       printf("----:     %-7d -> JUMP %04x\n", value, pc + to);
                                                             ^
 engines/sword2/desword2.cpp:428:60: warning: format '%x' expects argument
 of type 'unsigned int', but argument 3 has type 'long int' [-Wformat=]
 engines/sword2/desword2.cpp:433:78: warning: format '%x' expects argument
 of type 'unsigned int', but argument 2 has type 'long int' [-Wformat=]
      printf("----:     default -> JUMP %04x\n", pc + (int32)
 in.readUint32LE());
 ^
 engines/sword2/desword2.cpp:439:43: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
      printf("local(%d) += POP\n", parameter);
                                            ^
 engines/sword2/desword2.cpp:444:43: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
      printf("local(%d) -= POP\n", parameter);
                                            ^
 engines/sword2/desword2.cpp:448:53: warning: format '%x' expects argument
 of type 'unsigned int', but argument 2 has type 'long int' [-Wformat=]
      printf("IF POP THEN JUMP %04x\n", pc + parameter);
                                                      ^
 engines/sword2/desword2.cpp:536:39: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'int32 {aka long int}' [-Wformat=]
      printf("PUSH far(%d)\n", parameter);
                                        ^
     C++      main_cli.o
     C++      scummvm-tools-cli.o
     C++      engines/agos/compress_agos.o
 engines/agos/compress_agos.cpp: In member function 'void
 CompressAgos::convert_mac(Common::Filename*)':
 engines/agos/compress_agos.cpp:206:49: warning: format '%d' expects
 argument of type 'int', but argument 3 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
     sprintf(filename, "voices%d.dat", filenums[i]);
                                                  ^
     C++      engines/bladerunner/pack_bladerunner.o
 engines/bladerunner/pack_bladerunner.cpp: In member function 'virtual void
 PackBladeRunner::execute()':
 engines/bladerunner/pack_bladerunner.cpp:101:24: warning: comparison
 between signed and unsigned integer expressions [-Wsign-compare]
    while (cdCurrentPage < cdPageCount) {
                         ^
 engines/bladerunner/pack_bladerunner.cpp:102:25: warning: comparison
 between signed and unsigned integer expressions [-Wsign-compare]
     while (cdCurrentPage < cdPageCount) {
                          ^
 engines/bladerunner/pack_bladerunner.cpp:113:22: warning: comparison
 between signed and unsigned integer expressions [-Wsign-compare]
     if (cdCurrentPage == cdPageCount)
                       ^
     C++      engines/gob/compress_gob.o
     C++      engines/gob/extract_fascination_cd.o
     C++      engines/kyra/compress_kyra.o
 engines/kyra/compress_kyra.cpp: In member function 'void
 CompressKyra::processKyra3(Common::Filename*, Common::Filename*)':
 engines/kyra/compress_kyra.cpp:339:75: warning: format '%u' expects
 argument of type 'unsigned int', but argument 4 has type 'uint32 {aka long
 unsigned int}' [-Wformat=]
     snprintf(outname, 16, "%.08u%s", resFilename,
 audio_extensions(_format));
 ^
 engines/kyra/compress_kyra.cpp:344:83: warning: format '%u' expects
 argument of type 'unsigned int', but argument 4 has type 'uint32 {aka long
 unsigned int}' [-Wformat=]
      snprintf(linkname, 16, "%.08u%s", file->resFilename,
 audio_extensions(_format));
 ^
     C++      engines/queen/compress_queen.o
     C++      engines/saga/compress_saga.o
     C++      engines/sci/compress_sci.o
     C++      engines/scumm/compress_scumm_bun.o
     C++      engines/scumm/compress_scumm_san.o
     C++      engines/scumm/compress_scumm_sou.o
     C++      engines/sword1/compress_sword1.o
     C++      engines/sword2/compress_sword2.o
     C++      engines/tinsel/compress_tinsel.o
     C++      engines/tony/compress_tony.o
 engines/tony/compress_tony.cpp: In member function 'void
 CompressTony::convertTonyADPCMSample()':
 engines/tony/compress_tony.cpp:99:48: warning: format '%d' expects
 argument of type 'int', but argument 2 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
   printf("rate %d channels %d\n", rate, channels);
                                                 ^
 engines/tony/compress_tony.cpp:99:48: warning: format '%d' expects
 argument of type 'int', but argument 3 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
 engines/tony/compress_tony.cpp:100:48: warning: format '%d' expects
 argument of type 'int', but argument 2 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
   printf("original size %d\n", _input_adp.size());
                                                 ^
 engines/tony/compress_tony.cpp:114:56: warning: format '%d' expects
 argument of type 'int', but argument 2 has type 'long unsigned int'
 [-Wformat=]
   printf("uncompressed %d bytes\n", uncompressedSize * 2);
                                                         ^
     C++      engines/tony/compress_tony_vdb.o
 engines/tony/compress_tony_vdb.cpp: In member function 'virtual void
 CompressTonyVDB::execute()':
 engines/tony/compress_tony_vdb.cpp:185:88: warning: format '%d' expects
 argument of type 'int', but argument 3 has type 'long unsigned int'
 [-Wformat=]
     printf("%d\t%d\t%d/%d\n", _input_vdb.pos() - 8, _sampleSize + 8, j +
 1, vh[i]._parts);
 ^
     C++      engines/touche/compress_touche.o
     C++      engines/tucker/compress_tucker.o
     C++      engines/agos/extract_agos.o
     C++      engines/cge/extract_cge.o
     C++      engines/cge/pack_cge.o
     C++      engines/cine/extract_cine.o
     C++      engines/cruise/extract_cruise_pc.o
     C++      engines/gob/extract_gob_stk.o
 engines/gob/extract_gob_stk.cpp: In member function 'void
 ExtractGobStk::readChunkListV2(Common::File&, Common::File&)':
 engines/gob/extract_gob_stk.cpp:237:47: warning: format '%d' expects
 argument of type 'int', but argument 3 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
        compressFlag, curChunk->size, decompSize);
                                                ^
 engines/gob/extract_gob_stk.cpp:237:47: warning: format '%d' expects
 argument of type 'int', but argument 4 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
 engines/gob/extract_gob_stk.cpp:237:47: warning: format '%d' expects
 argument of type 'int', but argument 5 has type 'uint32 {aka long unsigned
 int}' [-Wformat=]
     C++      engines/kyra/extract_kyra.o
     C++      engines/prince/extract_prince.o
     C++      engines/prince/pack_prince.o
     C++      engines/prince/utils.o
     C++      engines/parallaction/extract_parallaction.o
 engines/parallaction/extract_parallaction.cpp: In member function 'void
 Archive::dumpStructs(FILE*)':
 engines/parallaction/extract_parallaction.cpp:192:134: warning: format
 '%i' expects argument of type 'int', but argument 6 has type 'uint32 {aka
 long unsigned int}' [-Wformat=]
    fprintf(dump, "{ \"%s\",%*s%5i, kArchive%s, %7i },\n", _names[i],
 32-(int)strlen(_names[i]), " ", _sizes[i], arcName+1, _offsets[i]);
 ^
 engines/parallaction/extract_parallaction.cpp:192:134: warning: format
 '%i' expects argument of type 'int', but argument 8 has type 'uint32 {aka
 long unsigned int}' [-Wformat=]
     C++      engines/scumm/extract_loom_tg16.o
     C++      engines/scumm/extract_mm_apple.o
     C++      engines/scumm/extract_mm_c64.o
     C++      engines/scumm/extract_mm_nes.o
     C++      engines/scumm/extract_scumm_mac.o
     C++      engines/scumm/extract_zak_c64.o
     C++      engines/kyra/kyra_ins.o
 engines/kyra/kyra_ins.cpp: In member function 'void
 FileExpander::generateTables(uint8, uint8, uint8, int)':
 engines/kyra/kyra_ins.cpp:388:26: warning: cast from type 'const uint8*
 {aka const unsigned char*}' to type 'uint16* {aka short unsigned int*}'
 casts away qualifiers [-Wcast-qual]
   uint16 * bt = (uint16*) tbl3;
                           ^
 engines/kyra/kyra_ins.cpp: In constructor
 'HoFInstaller::HoFInstaller(const char*)':
 engines/kyra/kyra_ins.cpp:544:53: warning: format '%d' expects argument of
 type 'int', but argument 5 has type 'uint32 {aka long unsigned int}'
 [-Wformat=]
     snprintf(filename, 64, "%s%03d", _baseFilename, i);
                                                      ^
 engines/kyra/kyra_ins.cpp:601:58: warning: format '%d' expects argument of
 type 'int', but argument 5 has type 'long unsigned int' [-Wformat=]
       snprintf(filename, 64, "%s.%03d", _baseFilename, i+1);
                                                           ^
     C++      engines/kyra/kyra_pak.o
 engines/kyra/kyra_pak.cpp: In member function 'virtual void
 Extractor::drawFileList()':
 engines/kyra/kyra_pak.cpp:447:71: warning: format '%d' expects argument of
 type 'int', but argument 3 has type 'uint32 {aka long unsigned int}'
 [-Wformat=]
    printf("Common::Filename: '%s' size: %d\n", cur->filename, cur->size);
                                                                        ^
     C++      compress.o
 compress.cpp: In member function 'void CompressionTool::encodeAudio(const
 char*, bool, int, const char*, AudioFormat)':
 compress.cpp:143:60: warning: format '%d' expects argument of type 'int',
 but argument 3 has type 'uint32 {aka long unsigned int}' [-Wformat=]
     tmp += sprintf(tmp, "--cbr -b %d ", lameparms.targetBitr);
                                                             ^
 compress.cpp:146:58: warning: format '%d' expects argument of type 'int',
 but argument 3 has type 'uint32 {aka long unsigned int}' [-Wformat=]
      tmp += sprintf(tmp, "--abr %d ", lameparms.targetBitr);
                                                           ^
 compress.cpp:148:62: warning: format '%d' expects argument of type 'int',
 but argument 3 has type 'uint32 {aka long unsigned int}' [-Wformat=]
      tmp += sprintf(tmp, "--vbr-new -V %d ", lameparms.vbrqual);
                                                               ^
 compress.cpp:151:52: warning: format '%d' expects argument of type 'int',
 but argument 3 has type 'int32 {aka long int}' [-Wformat=]
      tmp += sprintf(tmp, "-b %d ", lameparms.minBitr);
                                                     ^
 compress.cpp:153:52: warning: format '%d' expects argument of type 'int',
 but argument 3 has type 'int32 {aka long int}' [-Wformat=]
      tmp += sprintf(tmp, "-B %d ", lameparms.maxBitr);
                                                     ^
 compress.cpp:171:50: warning: format '%d' expects argument of type 'int',
 but argument 3 has type 'uint32 {aka long unsigned int}' [-Wformat=]
    tmp += sprintf(tmp, "-q %d ", lameparms.algqual);
                                                   ^
     C++      tools.o
     C++      encode_dxa.o
     C++      version.o
     LINK     degob
     C++      engines/kyra/dekyra.o
 engines/kyra/dekyra.cpp: In function 'int main(int, char**)':
 engines/kyra/dekyra.cpp:133:73: warning: format '%d' expects argument of
 type 'int', but argument 3 has type 'int32 {aka long int}' [-Wformat=]
   fprintf(outputFile, "|  Engine version: %1d                |\n",
 engine);
                                                                          ^
     C++      engines/kyra/dekyra_v1.o
     LINK     dekyra
     C++      engines/prince/deprince.o
 engines/prince/deprince.cpp: In function 'void printArray(int, int, int,
 bool, bool)':
 engines/prince/deprince.cpp:293:42: warning: format '%d' expects argument
 of type 'int', but argument 3 has type 'uint32 {aka long unsigned int}'
 [-Wformat=]
      printf("%s[%d]", labels[v].c_str(), v);
                                           ^
 engines/prince/deprince.cpp:295:19: warning: format '%d' expects argument
 of type 'int', but argument 2 has type 'uint32 {aka long unsigned int}'
 [-Wformat=]
      printf("%d", v);
                    ^
 engines/prince/deprince.cpp: In function 'int main(int, char**)':
 engines/prince/deprince.cpp:828:20: warning: comparison between signed and
 unsigned integer expressions [-Wsign-compare]
   for (int i = 0; i < dataLen; i++) {
                     ^
 engines/prince/deprince.cpp:969:22: warning: comparison between signed and
 unsigned integer expressions [-Wsign-compare]
     for (int i = 0; i < dataLen; i++) {
                       ^
 engines/prince/deprince.cpp:984:20: warning: comparison between signed and
 unsigned integer expressions [-Wsign-compare]
   for (int i = 0; i < dataLen; i++) {
                     ^
     C++      engines/prince/flags.o
 engines/prince/flags.cpp:26:2: warning: identifier 'nullptr' is a keyword
 in C++11 [-Wc++0x-compat]
   FlagDebug *flagd = nullptr;
   ^
 engines/prince/flags.cpp: In static member function 'static const char*
 Flags::getFlagName(uint16)':
 engines/prince/flags.cpp:26:21: error: 'nullptr' was not declared in this
 scope
   FlagDebug *flagd = nullptr;
                      ^
 engines/prince/flags.cpp:33:1: warning: control reaches end of non-void
 function [-Wreturn-type]
  }
  ^
 gmake: *** [engines/prince/flags.o] Error 1
 }}}

--
Ticket URL: <https://bugs.scummvm.org/ticket/10585#comment:4>
ScummVM <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list