Bug#297950: ttfprint: FTBFS (amd64/gcc-4.0): invalid lvalue in assignment
Package: ttfprint
Severity: normal
Tags: patch
When building 'ttfprint' on amd64 with gcc-4.0,
I get the following error:
gcc -O6 -s -Wall -o prescan.o -c prescan.c
In file included from prescan.c:1:
ttfprint.h:143:2: warning: no newline at end of file
prescan.c:274:8: warning: extra tokens at end of #endif directive
prescan.c: In function 'prescan':
prescan.c:444: error: invalid lvalue in assignment
prescan.c:445: error: invalid lvalue in assignment
prescan.c:477: error: invalid lvalue in assignment
prescan.c:478: error: invalid lvalue in assignment
prescan.c: In function 'tpl_command':
prescan.c:579: warning: format '%d' expects type 'int', but argument 2 has type 'long unsigned int'
make[1]: *** [prescan.o] Error 1
make[1]: Leaving directory `/ttfprint-0.9'
make: *** [build-stamp] Error 2
With the attached patch 'ttfprint' can be compiled
on amd64 using gcc-4.0.
Regards
Andreas Jochens
diff -urN ../tmp-orig/ttfprint-0.9/prescan.c ./prescan.c
--- ../tmp-orig/ttfprint-0.9/prescan.c 1998-03-24 11:26:35.000000000 +0100
+++ ./prescan.c 2005-03-03 19:18:57.333997001 +0100
@@ -441,8 +441,8 @@
fl_current->seq = 0;
fl_current->dict = FALSE;
fl_current->outline = NULL;
- (unsigned char)fl_current->code[0]=(unsigned char)hbyte;
- (unsigned char)fl_current->code[1]=(unsigned char)lbyte;
+ fl_current->code[0]=(unsigned char)hbyte;
+ fl_current->code[1]=(unsigned char)lbyte;
fprintf (tempfile,"\\g%03x",font_count);
font_count ++;
@@ -474,8 +474,8 @@
fl_current->next = NULL;
fl_tail->next = fl_current;
fl_tail = fl_current;
- (unsigned char)fl_current->code[0]=(unsigned char)hbyte;
- (unsigned char)fl_current->code[1]=(unsigned char)lbyte;
+ fl_current->code[0]=(unsigned char)hbyte;
+ fl_current->code[1]=(unsigned char)lbyte;
fprintf (tempfile,"\\g%03x",font_count);
if ((++font_count) == FONTNUM)
Reply to: