Created attachment 6459 [details] build log using the 32-bit version of the intel compiler tried compiling with intel C on linux (ln -s base/unixansi.mak Makefile ; make), most of the warnings are with type-casts, but these aren't. The first one looks like a real bug in the font code (last worked on by Igor and Peter) so goes to Chris first, then maybe Robin/Michael/Lars ,as these covers a few areas - font, path, color, libtiff. ./base/gsfcid2.c(282): warning #175: subscript out of range ./base/gxfill.c(304): warning #413: variable "lst" has an uninitialized const field lcms/src/cmsio1.c(1637): warning #186: pointless comparison of unsigned integer with zero lcms/src/cmsio1.c(2915): warning #186: pointless comparison of unsigned integer with zero tiff//libtiff/tif_unix.c(101): warning #810: conversion from "void *" to "int" may lose significant bits tiff//libtiff/tif_unix.c(58): warning #810: conversion from "void *" to "int" may lose significant bits tiff//libtiff/tif_unix.c(64): warning #810: conversion from "void *" to "int" may lose significant bits tiff//libtiff/tif_unix.c(70): warning #810: conversion from "void *" to "int" may lose significant bits tiff//libtiff/tif_unix.c(76): warning #810: conversion from "void *" to "int" may lose significant bits tiff//libtiff/tif_unix.c(88): warning #810: conversion from "void *" to "int" may lose significant bits
Created attachment 6460 [details] build log using the 64-bit version of the intel compiler a similar log from using the 64-bit version of the intel compiler
./base/gsfcid2.c(282): warning #175: subscript out of range should be resolved with r.11507 (I don't have the Intel compiler to be sure, but the code was clearly wrong!).
passing this parcel along......
We agreed to be gcc -Wall compliant only, but if there are really useful warnings here by all means let's fix them. Degrading readability to fix warnings is not desirable.
Created attachment 16631 [details] Patch to fix remaining important warnings Most of the warnings reported in the build logs no longer occur. When building all the products built by make, a significant fraction of the warnings is from external code such as freetype. None of these warnings are critical. Of the warnings in Ghostscript code, almost all were of two kinds: "warning #3179: deprecated conversion of string literal to char*", which is a legal part of the C standard. "command line warning #10148: option '-Wno-misleading-indentation' not supported", where the configure script detected icc as gcc. Neither of these is significant. After filtering these out, only 4 warnings remained in the Ghostscript codebase: ./contrib/gdevhl12.c(484): warning #181: argument of type "unsigned long" is incompatible with format "%u", expecting argument of type "unsigned int" fprintf(prn_stream, "\033*b%uW", s->out_count * sizeof(u16) + 9); ./contrib/japanese/gdevp201.c(246): warning #181: argument of type "long" is incompatible with format "%04d", expecting argument of type "int" (out_beg - out) / bytes_per_column); ./base/gscspace.c(186): warning #266: function "sfclose" declared implicitly code = sfclose(str); ./base/gscspace.c(200): warning #266: function "gsicc_get_icc_buff_hash" declared implicitly gsicc_get_icc_buff_hash(profile->buffer, &(profile->hashcode), This patch fixes all 4 of these.
Created attachment 19425 [details] Patch All the warnings are now fixed but makefile still lack the necessary dependencies. This is the last hunk to commit for this bug.
Fixed due to Peter's efforts. Thanks.