Subject: Re: grep-2.5.1a: build comments



On Nov 20, 2004, at 10:02, Nelson H. F. Beebe wrote:

cc-1028 c89: ERROR File = dfa.c, Line = 1055
The expression used must have a constant value.

char expr[6] = { '[', c, '-', c2, ']', '\0' };
^

cc-1028 c89: ERROR File = dfa.c, Line = 1055
The expression used must have a constant value.

char expr[6] = { '[', c, '-', c2, ']', '\0' };
^

cc-1028 c89: ERROR File = dfa.c, Line = 1059
The expression used must have a constant value.

char buf[2] = { c, '\0' };
^

these are already fixed in CVS.

/opt/studio9/SUNWspro/bin/c89 -DLIBDIR=\"/usr/local/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../intl -I/usr/local/include -c `test -f savedir.c || echo './'`savedir.c
"savedir.c", line 116: operands have incompatible types:
union {double _d, array[2] of int _l} "<=" int
"savedir.c", line 117: assignment type mismatch:
union {double _d, array[2] of int _l} "=" int
"savedir.c", line 119: argument #1 is incompatible with prototype:
prototype: unsigned int : "/usr/include/iso/stdlib_iso.h", line 105
argument : union {double _d, array[2] of int _l}
"savedir.c", line 134: warning: {}-enclosed initializer required
"savedir.c", line 134: struct/union-valued initializer required
"savedir.c", line 147: operands have incompatible types:
union {double _d, array[2] of int _l} ">" union {double _d, array[2] of int _l}
"savedir.c", line 151: operands have incompatible types:
union {double _d, array[2] of int _l} ">" union {double _d, array[2] of int _l}
"savedir.c", line ...

152: operands have incompatible types:
union {double _d, array[2] of int _l} "+=" int
"savedir.c", line 154: argument #2 is incompatible with prototype:
prototype: unsigned int : "/usr/include/iso/stdlib_iso.h", line 112
argument : union {double _d, array[2] of int _l}
c89: acomp failed for savedir.c

wow. scary definition of 'off_t' there!

anyway, 'off_t' is an inappropriate type for that parameter. it should be of type 'size_t' instead. likewise the local 'size_needed' later.

gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../intl -I../lib -DLOCALEDIR=\"/usr/local/share/locale\" -g -O2 -c `test -f dfa.c || echo './'`dfa.c
In file included from dfa.c:116:
dfa.h:272: error: parse error before "wctype_t"
dfa.h:272: warning: no semicolon at end of struct or union
dfa.h:281: error: parse error before '}' token
dfa.c: In function `parse_bracket_exp_mb':
.... cascade of errors suppressed ...

the #include <wctype.h> should be in dfa.h rather than dfa.c, because of this reference to wctype_t in dfa.h.

i can provide patches if it's any help, but i assume it's as quick to just make the changes as apply the patches.

--
http://www.jessies.org/~enh/








Privacy