Jan Wieck JanWieck at Yahoo.com
Sat May 1 07:50:10 PDT 2010
On 5/1/2010 5:26 PM, Steve Singer wrote:
> David Fetter wrote:
>> Folks,
>> 
>> Please find enclosed a patch to get Slony 2.0.3 to compile on OS/X :)
> 
> When I apply this patch I can no longer compile on linux.
> I get the following
> 
> gcc -g -O2 -Wall -Wmissing-prototypes -Wmissing-declarations -I../.. 
> -DPGSHARE="\"/usr/local/pgsql_cvs/share/\"" 
> -I/usr/local/pgsql_cvs/include/ -I/usr/local/pgsql_cvs/include/server/ 
> -c -o parser.o parser.c
> parser.y:26: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ 
> before ‘yyleng’
> parser.y: In function ‘yyparse’:
> parser.y:374: error: ‘yyleng’ undeclared (first use in this function)
> parser.y:374: error: (Each undeclared identifier is reported only once
> parser.y:374: error: for each function it appears in.)
> make[2]: *** [parser.o] Error 1
> 
> 
> The SIZE_T_TYPE macro is not defined,  If your intention is to use 
> size_t for yyleng, shouldn't you be using size_t directly?
> 
> Also scan.c in the same directory is still referencing yyleng as a int.

I think the intention of the patch is to look for a suitable size_t and 
fallback to int if none was found.

However, in my flex skeleton file (flex 2.5.35 FreeBSD) it is defined as 
extern int. That is why scan.c has it as int, because the extern 
declaration in there is coming from the skeleton, not the scan.l file.


Jan

-- 
Anyone who trades liberty for security deserves neither
liberty nor security. -- Benjamin Franklin


More information about the Slony1-general mailing list