On Jun 18, 2008, at 11:34 PM, walt wrote:
David Shochat wrote:
On Jun 18, 2008, at 8:27 PM, walt wrote:
How about:
char *p;
...
int *q = (int *) p;
q++;
p = (char *) q;
That would have the same net effect and is accepted by gcc 4.2.3,
which
does not accept the original construct.
Well, here is my first attempt at implementing your suggestion, but it
produces exactly the same compiler error as the original code.
Perhaps
in the morning when I'm more awake I'll do better.
(snip)
- *((unsigned long int *) tmp)++ =
+ *qtmp = *((unsigned long int *) b1)++;
+ qtmp++;
+ tmp = (char *)qtmp;
+/* *((unsigned long int *) tmp)++ =
*((unsigned long int *) b1)++;
+*/
}
else
{
--n2;
- *((unsigned long int *) tmp)++ =
+ *qtmp = *((unsigned long int *) b2)++;
+ qtmp++;
+ tmp = (char *)qtmp;
+/* *((unsigned long int *) tmp)++ =
*((unsigned long int *) b2)++;
+*/
I think that should be:
qtmp = (unsigned long int *) tmp;
qb2 = (unsigned long int *) b2;
*qtmp++ = *qb2++;
tmp = (char *)qtmp;
b2 = (char *) qb2;
Not sure about the last line: I'm assuming that b2 is a char*.
Is this code from old pan or new pan? Maybe I'll try doing the actual
patch.
-- David
_______________________________________________
Pan-users mailing list
Pan-users@nongnu.org
http://lists.nongnu.org/mailman/listinfo/pan-users