Bug 19467 – Support EV_SET on OSX

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P4
Component
druntime
Product
D
Version
D2
Platform
x86_64
OS
Mac OS X
Creation time
2018-12-06T10:36:54Z
Last change time
2023-01-15T20:36:56Z
Keywords
betterC, pull
Assigned to
No Owner
Creator
zoujiaqing

Comments

Comment #0 by zoujiaqing — 2018-12-06T10:36:54Z
Undefined symbols for architecture x86_64: "__D4core3sys6darwinQl5event6EV_SETFNbNiPSQBmQBkQBjQBqQBg8kevent_tmstklPvZv", referenced from: __D3app12updateEventsFiiibZv in io.o ld: symbol(s) not found for architecture x86_64
Comment #1 by alphaglosined — 2018-12-06T10:45:29Z
EV_SET is a D function which references structs only. It is effectively is a C macro (translated). EV_SET function calling, should not be causing linking issues by itself. https://github.com/dlang/druntime/blob/master/src/core/sys/darwin/sys/event.d#L49
Comment #2 by kinke — 2018-12-06T17:00:18Z
Unless using `-betterC` of course.
Comment #3 by bugzilla — 2023-01-15T04:44:11Z
Corrected link: https://github.com/dlang/dmd/blob/master/druntime/src/core/sys/darwin/sys/event.d#L49 which points to: extern(D) void EV_SET64(kevent64_s* kevp, typeof(kevent64_s.tupleof) args) { *kevp = kevent64_s(args); } It doesn't work with betterC because it requires linking with the druntime library.
Comment #4 by dlang-bot — 2023-01-15T04:52:02Z
@WalterBright created dlang/dmd pull request #14820 "fix Issue 19467 - Support EV_SET on OSX" fixing this issue: - fix Issue 19467 - Support EV_SET on OSX https://github.com/dlang/dmd/pull/14820
Comment #5 by dlang-bot — 2023-01-15T16:30:40Z
dlang/dmd pull request #14820 "fix Issue 19467 - Support EV_SET on OSX" was merged into stable: - 33c02481522d4420dd14915d6c9d8e8fac61ae27 by Walter Bright: fix Issue 19467 - Support EV_SET on OSX https://github.com/dlang/dmd/pull/14820
Comment #6 by dlang-bot — 2023-01-15T20:36:56Z
dlang/dmd pull request #14823 "merge stable" was merged into master: - 972c2d14df41e8a8deabbb732ac884c39ac346d4 by Walter Bright: fix Issue 19467 - Support EV_SET on OSX https://github.com/dlang/dmd/pull/14823