[ 
https://issues.apache.org/jira/browse/THRIFT-5243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17156134#comment-17156134
 ] 

Daniel X commented on THRIFT-5243:
----------------------------------

Just an FYI, I was able to produce a reduced version of the LDC2 bug, and have 
opened an issue on their bug tracker. Will follow up here if/when it gets fixed.

[https://github.com/ldc-developers/ldc/issues/3504]

 

> Broken Dlang build on Windows
> -----------------------------
>
>                 Key: THRIFT-5243
>                 URL: https://issues.apache.org/jira/browse/THRIFT-5243
>             Project: Thrift
>          Issue Type: Bug
>          Components: D - Library
>    Affects Versions: 0.13.0
>         Environment: Windows 10 Pro 1909
> LDC version 1.20.1
> DUB version 1.19.0
> Thrift 0.13.0
>  
>            Reporter: Daniel X
>            Priority: Major
>
> Can't build on Windows with a recent-ish D compiler (LDC 1.20.1) .
> An immediate problem is that the D library is using a deprecated winsock 
> import (*std.c.windows.winsock*, has moved to *core.sys.windows.winsock2*). 
> But fixing that manually reveals a slew of other issues beyond my 
> understanding.
> Just a few from the error output:
> {quote}{{lib\d\src\thrift\async\libevent.d(65,37): Error: function 
> deimos.event2.event.event_new(event_base*, int, short, extern (C) void 
> function(int, short, void*), void*) is not callable using argument types 
> (event_base*, socket_t, int, extern (C) void function(int, short, void*) 
> nothrow @system, void*)}}
>  {{lib\d\src\thrift\async\libevent.d(65,37): cannot pass argument 
> this.controlReceiveSocket_.handle() of type socket_t to parameter int}}
>  {{lib\d\src\thrift\async\libevent.d(191,25): Error: template 
> thrift.async.libevent.TLibeventAsyncManager.registerOneshotEvent cannot 
> deduce function from argument types !()(socket_t, short, extern (C) void 
> function(int, short, void*) nothrow @system, const(timeval)*, void 
> delegate(TAsyncEventReason callReason)), candidates are:}}
>  {{lib\d\src\thrift\async\libevent.d(195,8): 
> registerOneshotEvent(T)(evutil_socket_t fd, short type, event_callback_fn 
> callback, const(timeval)* timeout, T payload)}}
>  {{lib\d\src\thrift\codegen\async_client_pool.d(99,25): Deprecation: 
> initialization of immutable variable from static this is deprecated.}}
>  {{lib\d\src\thrift\codegen\async_client_pool.d(99,25): Use shared static 
> this instead.}}
> {quote}
> Also, while replacing the deprecated winsock imports, I noticed the 
> conditional compilation blocks were using version(Win32) instead of 
> version(Windows). AFAIK the former is only for 32-bit compilation - and I had 
> to replace that to get as far as I did.
> Sorry I can't be of more assistance, but I didn't see any existing issues 
> about this so thought I'd report it. (Not a lot of Thrift D users on Windows, 
> it seems!)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to