János, Tóth F. wrote: > I get these compiler warnings: > spectro\i1pro_imp.c(8326): warning #592: variable "y" is used before > its value is set That function isn't called with the #defines as they are, so it's a false warning. > tiff\libtiff\tif_dirinfo.c(797): warning #167: argument of type > "size_t={unsigned __int64} *" is incompatible with parameter of type > "unsigned int *" > &tif->tif_nfields, Not my code, so I'm not going to try and fix it. > icc\icclu.c(292): warning #170: pointer points outside of underlying object > for (bp = buf-1, nbp = buf, i = 0; i < MAX_CHAN; i++) { The pointer isn't reference, so it's a false warning. But the pointer isn't used as a marker anymore, so I'll remove it. > xicc\xicclu.c(1077): warning #170: pointer points outside of underlying object > xicc\mpplu.c(351): warning #170: pointer points outside of underlying object > xicc\mpplu.c(471): warning #170: pointer points outside of underlying object > xicc\xcolorantslu.c(156): warning #170: pointer points outside of Same. > spectro\illumread.c(354): warning #140: too many arguments in function call > spectro\illumread.c(357): warning #140: too many arguments in function call I'll fix it. > spectro\spotread.c(1687): warning #592: variable "XYZ" is used before > its value is set > rXYZ[0] = XYZ[0]; The compiler is incorrect - it's not smart enough to notice that there is a check before the assignment. Graeme Gill.