
Hi, I have a problem when processing "vte/vte.h" (from vte-0.11.10) with c2hs-0.12.0 and glibc-2.3.3: LANG=C c2hs --cppopts="-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include" vte.h Vte.chs c2hs: Generic fatal error. /usr/include/sys/sysmacros.h:43: (column 1) [FATAL]
Syntax error! The symbol `{' does not fit here.
It seems sys/sysmacros.h changed from glibc-2.3.2. Here is the context: # if defined __GNUC__ && __GNUC__ >= 2 __extension__ extern __inline unsigned int gnu_dev_major (unsigned long long int __dev) __THROW { return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff); } Jens ps glibc-2.3.3 will be in Fedora Core 2, which is being released on Tuesday. pps I just uploaded c2hs-0.12.0 rpms built with glibc-2.3.3 to http://haskell.org/~petersen/rpms/c2hs/. I applied the following patch to build it with ghc-6.2.1: --- c2hs-0.12.0/c2hs/c/CAttrs.hs~ 2004-05-16 09:46:07.000000000 +0900 +++ c2hs-0.12.0/c2hs/c/CAttrs.hs 2004-05-16 09:46:07.000000000 +0900 @@ -144,7 +144,7 @@ -- leaveObjRangeC :: AttrC -> AttrC leaveObjRangeC ac = ac { - defObjsAC = fst . leaveRange . defObjsAC $ ac, + defObjsAC = fst . leaveRange . defObjsAC $ ac } -- add another definitions to the object name space (EXPORTED)