D/Objective-C 64bit
Christian Schneider via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Fri Nov 7 08:05:55 PST 2014
> Now I know what the problem is. In D, module variables are by
> default in TLS (thread local storage). To make it refer to a
> global C variable, use __gshared:
>
> extern (C) extern __gshared NSString
> NSApplicationDidHideNotification;
>
> Sorry, I completely forgot about that.
Ha, awesome! It works! I'll add this to a wiki page in the
DiveFramework github repos.
Thanks again!
Oh, and btw, I was briefly looking into the DMD source for trying
to fix myself the issue with the protocol to class instance cast
(trying to be useful), but I am seriously completely not hardcore
enough of digging anything in there, lol. Anyhow, if you got a
hint, let me know. It's not just in the example discussed in my
other posts, I found it to be an issue in other places as well,
as often framework classes return id / ObjcObject instead of a
further typed instance. I don't remember where exactly I had a
problem, but I remember I used NSObject instead of ObjcObject in
these places, which of course is not the way to go.
Have a nice weekend!
More information about the Digitalmars-d-announce
mailing list