David,
I don't have GTK installed here so I can't check for sure. But, in
the following:
unsigned int uival;
...
case G_TYPE_UINT:
case G_TYPE_ULONG:
context->ObjectToStringSize(context->ArrayAt(args, i + 1),
(size_t *)&uival);
coldata.data[0].v_uint = uival;
break;
case G_TYPE_INT64:
context->ObjectToInt64(context->ArrayAt(args, i + 1), &ival64);
coldata.data[0].v_int64 = ival64;
break;
case G_TYPE_UINT64:
context->ObjectToUnsignedInt64(context->ArrayAt(args, i +
1), &uival64);
coldata.data[0].v_uint64 = uival64;
break;
It looks to me like GTK is defining their own G_TYPE_xxx names to have
portable code. If so, I think you should have used this to fix the
compile problem on 64-bit Ubuntu:
context->ObjectToUnsignedInt32(context->ArrayAt(args, i + 1), &uival);
not this:
context->ObjectToStringSize(context->ArrayAt(args, i + 1), (size_t *)&uival);
In the above, on 64-bit systems, your casting the address of a 32-bit
variable to the address of a 64-bit variable. That seems likely to
cause problems.
On the other hand, if GTK is varying the size of:
G_TYPE_ULONG
depending on the operating system, then maybe you should change the
declaration of uival from:
unsigned int uival;
to:
G_TYPE_ULONG uival;
---------- Forwarded message ----------
From: <[email protected]>
Date: Fri, Dec 18, 2009 at 8:08 AM
Subject: [Oorexx-svn] SF.net SVN: oorexx:[5437] rexxgtk/trunk/grxtreestore.cpp
To: [email protected]
Revision: 5437
http://oorexx.svn.sourceforge.net/oorexx/?rev=5437&view=rev
Author: wdashley
Date: 2009-12-18 16:08:47 +0000 (Fri, 18 Dec 2009)
Log Message:
-----------
Oops! Left out the astericks!
Modified Paths:
--------------
rexxgtk/trunk/grxtreestore.cpp
Modified: rexxgtk/trunk/grxtreestore.cpp
===================================================================
--- rexxgtk/trunk/grxtreestore.cpp 2009-12-18 14:45:08 UTC (rev 5436)
+++ rexxgtk/trunk/grxtreestore.cpp 2009-12-18 16:08:47 UTC (rev 5437)
@@ -177,7 +177,7 @@
break;
case G_TYPE_UINT:
case G_TYPE_ULONG:
- context->ObjectToStringSize(context->ArrayAt(args, i +
1), (size_t)&uival);
+ context->ObjectToStringSize(context->ArrayAt(args, i +
1), (size_t *)&uival);
coldata.data[0].v_uint = uival;
break;
case G_TYPE_INT64:
This was sent by the SourceForge.net collaborative development
platform, the world's largest Open Source development site.
------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev
_______________________________________________
Oorexx-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-svn
------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev
_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel