<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">On 11/11/2013 10:04, Andrea Canciani
wrote:<br>
</div>
<blockquote
cite="mid:CAN_5=BDNeHo-KAvNiNgEVDiRUNctMu06jy9OGRxVhdVPKMd+zA@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote"><br>
<div>See <a moz-do-not-send="true"
href="http://msdn.microsoft.com/en-us/library/aa271769%28v=vs.60%29.aspx">http://msdn.microsoft.com/en-us/library/aa271769(v=vs.60).aspx</a><br>
</div>
<div>__declspec(import) is mandatory for variables, but for
functions it is just an optimization which removes a jump.<br>
</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex"> </blockquote>
</div>
</div>
</div>
</blockquote>
<br>
Thanks for the prompt reply Andrea. As it happens, that's exactly
what I wanted to check. I just encountered a problem with some
other library which wasn't using __declspec. Whilst tracking it
down I discovered that function calls were working as expected - but
any attempt to access data (from outside the DLL) would crash my
program. My initial assumption was that the data wasn't getting
initialized for some reason but after reading that article I now
realise that it was a problem with the level of indirection.<br>
<br>
Anyway, to cut a long story short... this caused me to investigate
some of my other libraries which have historically avoided
__declspec (including cairomm). I noticed that some of them (e.g.
atk) have recently introduced it specifically for variables
(ATK_VAR) whereas others (e.g. proxy-libintl) use the "DATA"
specifier in their module definition file. But cairomm doesn't do
either and I just wanted to check that you're aware of this issue
(which you obviously are!)<br>
<br>
So I'm concluding that cairomm doesn't export any variables - yes?<br>
<br>
John<br>
</body>
</html>