Thread (1 message) 1 message, 1 author, 2016-06-15

Re: Issue with compiling git 1.8.4 under uclibc with gcc 4.6.3

From: Andreas Schwab <hidden>
Date: 2016-06-15 22:58:31

Lukas Fleischer [off-list ref] writes:
On Mon, Aug 26, 2013 at 02:29:12PM -0600, Lance wrote:
quoted
[...]
quoted
quoted
    CC config.o
config.c: In function 'get_next_char':
config.c:220:14: error: expected identifier before '(' token
config.c:220:14: error: expected statement before ')' token
config.c:220:14: error: expected statement before ')' token
config.c:224:11: error: expected identifier before '(' token
Does changing line 220 of config.c to

    int c = (cf->fgetc)(cf);

fix it?
I also had to change line 224 to the following

                c = (cf->fgetc)(cf);

Once both places were changes, it compiled successfully.
Sounds like a parser bug to me.
No, it isn't.  fgetc may be a function-like macro that expands to an
arbitrary expression (same for ungetc or ftell, or any other indentifier
that matches a C library function, for that matter).

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help