Package: twpsk
Severity: normal
Tags: patch
When building 'twpsk' on amd64 with gcc-4.0,
I get the following error:
twpskCB.C: In function 'void changeDisplayCB(_WidgetRec*, void*, void*)':
twpskCB.C:345: error: cast from 'void*' to 'int' loses precision
twpskCB.C: In function 'void arrowCB(_WidgetRec*, void*, void*)':
twpskCB.C:470: error: cast from 'void*' to 'int' loses precision
twpskCB.C: In function 'void freqTextCB(_WidgetRec*, void*, void*)':
twpskCB.C:526: error: cast from 'void*' to 'int' loses precision
twpskCB.C:533: error: cast from 'void*' to 'int' loses precision
twpskCB.C:544: error: cast from 'void*' to 'int' loses precision
twpskCB.C: In function 'void audioCB(_WidgetRec*, void*, void*)':
twpskCB.C:739: error: cast from 'void*' to 'int' loses precision
twpskCB.C: In function 'void bwCB(_WidgetRec*, void*, void*)':
twpskCB.C:841: error: cast from 'void*' to 'int' loses precision
twpskCB.C: In function 'void seekTimeOut(void*, XtIntervalId)':
twpskCB.C:1263: error: cast from 'void*' to 'int' loses precision
twpskCB.C:1267: error: cast from 'void*' to 'int' loses precision
make[2]: *** [twpskCB.o] Error 1
make[2]: Leaving directory `/twpsk-2.1/user-twpsk'
With the attached patch 'twpsk' can be compiled
on amd64 using gcc-4.0.
Regards
Andreas Jochens
diff -urN ../tmp-orig/twpsk-2.1/user-twpsk/twpskCB.C ./user-twpsk/twpskCB.C
--- ../tmp-orig/twpsk-2.1/user-twpsk/twpskCB.C 2002-08-13 21:38:56.000000000
+0200
+++ ./user-twpsk/twpskCB.C 2005-01-10 16:53:12.751233984 +0100
@@ -342,7 +342,7 @@
*/
void changeDisplayCB (Widget w, XtPointer cdata, XtPointer cbs)
{
- disp.changeDisplay ((int)cdata);
+ disp.changeDisplay ((long)cdata);
}
@@ -467,7 +467,7 @@
XmTextFieldSetString (textF, str);
- if ((int)userData == 'R')
+ if ((long)userData == 'R')
{
/* Set new rx freq or */
commControl(COMM_RXCH, COMM_FREQ, (int)(freq*100));
@@ -523,14 +523,14 @@
NULL);
}
- if ((int)userData == 'R')
+ if ((long)userData == 'R')
{
/* Set new rx freq */
commControl(COMM_RXCH, COMM_FREQ, (int)(freq*100));
/* Now force focus to the xmit Text Widget */
XmProcessTraversal (pskwids.getTxText(), XmTRAVERSE_CURRENT);
}
- else if ((int)userData == 'T')
+ else if ((long)userData == 'T')
{
/* Set new tx freq */
commControl(COMM_TXCH, COMM_FREQ, (int)(freq*100));
@@ -541,7 +541,7 @@
DecoderWid *dec = (DecoderWid *)cdata;
if(dec==NULL) {
fprintf (stderr,"callback with cdata==NULL and userData="
- "%p (%c)\n", userData, (int)userData);
+ "%p (%c)\n", userData, (char)(long)userData);
break;
}
commControl(dec->commChannel, COMM_FREQ, (int)(freq*100));
@@ -736,7 +736,7 @@
*/
void audioCB (Widget /*w*/, XtPointer cdata, XtPointer cbs)
{
- char which = (int) cdata;
+ char which = (long) cdata;
XmScaleCallbackStruct *ptr = (XmScaleCallbackStruct *)cbs;
/* set stereo levels */
int level = (ptr->value<<8) + ptr->value;
@@ -838,7 +838,7 @@
*/
void bwCB (Widget w, XtPointer cdata, XtPointer cbs)
{
- int samp = (int) cdata;
+ long samp = (long) cdata;
XmToggleButtonCallbackStruct *pt = (XmToggleButtonCallbackStruct *) cbs;
if (pt->set == True)
@@ -1260,11 +1260,11 @@
str = XmTextGetString (pskwids.getRxFreqTF());
freq = atof (str);
- if ((int)cdata == 'U')
+ if ((long)cdata == 'U')
{
freq = freq + step;
}
- if ((int)cdata == 'D')
+ if ((long)cdata == 'D')
{
freq = freq - step;
}
diff -urN ../tmp-orig/twpsk-2.1/user-twpsk/twpskDiags.C
./user-twpsk/twpskDiags.C
--- ../tmp-orig/twpsk-2.1/user-twpsk/twpskDiags.C 2005-01-10
16:53:37.130527768 +0100
+++ ./user-twpsk/twpskDiags.C 2005-01-10 16:53:25.717262848 +0100
@@ -69,7 +69,7 @@
*/
void OkCB (Widget w, XtPointer cdata, XtPointer cbs)
{
- char lastChar = (int) cdata;
+ char lastChar = (long) cdata;
XmSelectionBoxCallbackStruct *pt = (XmSelectionBoxCallbackStruct *) cbs;
char *inputString, *freeMe;
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]