Linux 64bit branch

Jesse Phillips Jesse.K.Phillips+D at gmail.com
Sun Jan 12 20:29:05 PST 2014


On Sunday, 12 January 2014 at 20:43:24 UTC, Jesse Phillips wrote:
> On Sunday, 12 January 2014 at 20:13:35 UTC, Jesse Phillips 
> wrote:
>> On Sunday, 12 January 2014 at 11:42:30 UTC, Jacob Carlborg
>>> Ok, I see. Have you verified that you have all the necessary 
>>> libraries installed? They're listed here: 
>>> https://github.com/d-widget-toolkit/dwt#linux
>>
>> Not yet, will be something to look into.
>
> I was able to get snippets to compile using the recommendation:
> http://forum.dlang.org/post/kjscs8$2a9n$1@digitalmars.com
>
> Adding gnomevfs-2.
>
> But the result of running is a segfault so will need to 
> investigate there now. I'll start with your /*64*/ tip.

I'm not sure that there is anything specific needed where /*64*/ 
comments exist, the tool would have a lot of work to translate 
many types and not just a single cast.

But I did find where there is more work. The segfault pointed to:

     org.eclipse.swt.widgets.Display.Display.windowProcFunc3()

Which is defined as:

     private static extern(C) int /*long*/ windowProcFunc3 (int 
/*long*/ handle, int /*long*/ arg0, int /*long*/ user_data) {

which is assigned as:

     GCallback windowProc3 = cast(GCallback)&windowProcFunc3;

Where GCallback is defined as:

internal.gtk.OS.d
     public alias org.eclipse.swt.internal.c.glib_object.GCallback 
GCallback;

     alias _BCD_func__2331 GCallback;
     alias void function() _BCD_func__2331;

I don't understand why it is cast to a function which takes no 
arguments, but suspect that fixing the signatures for /*long*/ is 
a good direction.


More information about the Digitalmars-d-dwt mailing list