Bug 690883

Summary: [PATCH] Missing header include causes build error on AIX 5.3
Product: Ghostscript Reporter: Thomas Klausner <tk>
Component: ColorAssignee: Michael Vrhel <michael.vrhel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P4    
Version: 8.70   
Hardware: Other   
OS: AIX   
Customer: Word Size: ---
Bug Depends on:    
Bug Blocks: 691049    
Attachments: Patch fixing the problem.

Description Thomas Klausner 2009-11-02 16:04:57 UTC
On AIX 5.3 TL 8 SP2, compilation of ghostscript-8.70 fails with:
cc  -DHAVE_MKSTEMP -DHAVE_HYPOT -DHAVE_FILE64 -DHAVE_MKSTEMP64 -DHAVE_FONTCONFIG
-O  -Ijpeg -DPNG_NO_ASSEMBLER_CODE -I/opt/pkgsrc/
include -I/opt/pkgsrc/include/freetype2  -DHAVE_STDINT_H
-DGX_COLOR_INDEX_TYPE="unsigned long int" -q64 -qarch=ppc64 -O2 -qstrict
-qcpluscmt -qmaxmem=-1 -qkeyword=inline -I/opt/pkgsrc/include -DA4 -ma
-I/opt/pkgsrc/include/freetype2 -DUSE_LIBICONV_GNU -DUSE_LI
BPAPER -I./obj/../soobj -I./base  -o ./obj/../soobj/gxblend1.o -c ./base/gxblend1.c
"./base/gxpcolor.h", line 139.8: 1506-282 (S) The type of the parameters must be
specified in a prototype.
"./base/gxpcolor.h", line 140.8: 1506-282 (S) The type of the parameters must be
specified in a prototype.
"./base/gxpcolor.h", line 141.8: 1506-282 (S) The type of the parameters must be
specified in a prototype.
"./base/gxpcolor.h", line 147.8: 1506-282 (S) The type of the parameters must be
specified in a prototype.
"./base/gxpcolor.h", line 171.16: 1506-120 (W) Function cannot return a const
qualified type.
Comment 1 Thomas Klausner 2009-11-02 16:05:30 UTC
Created attachment 5611 [details]
Patch fixing the problem.
Comment 2 Ralph Giles 2009-11-02 21:43:17 UTC
I've committed a "more proper" fix in svn r10260. Feel free to verify.

Michael, gxpcolor.h has a comment at the top about gxdcolor.h needing to be
pre-included. Adding those to gdevp14.h should solve the problem. However, I
think these instances where we have implicit dependencies between header files
aren't a useful optimization, and fixing it the way the reported did, by adding
the header's dependencies explicitly to the header itself is less confusing. Let
me know if you'd rather I fixed it that way.
Comment 3 Hin-Tak Leung 2010-12-27 21:56:32 UTC
This is likely fixed (see last comment in bug 691049 and Ralph's comment 2). Please re-open if that's not the case.