comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: StdCall and pragma Import_Function
Date: Sat, 20 Aug 2011 11:23:58 +0200
Date: 2011-08-20T11:23:58+02:00	[thread overview]
Message-ID: <11iimxhkp8uwk.f1fbqtfqtfdg.dlg@40tude.net> (raw)
In-Reply-To: 4e4f6a7f$0$6541$9b4e6d93@newsspool4.arcor-online.net

On Sat, 20 Aug 2011 10:04:15 +0200, Georg Bauhaus wrote:

> On 19.08.11 21:43, Dmitry A. Kazakov wrote:
>   it indeed uses StdCall convention. The corresponding output of dumpbin is:
> 
>> BTW, you will have problems with making bindings to this mess portable. I
>> had similar issues with poorly designed Glib. They too have the linkage
>> names varying from platform to platform. I solved that by using GNU linker
>> weak references and wrappers. Not nice, but they refused to fix the
>> problem.
> 
> Did you mention the text ".*Ada.*" when asking?  .->

Of course not! (:-)) I just pointed out that some functions have one
external name under Win32 and another under Linux. They "wisely" used
#define to achieve this fantastic effect. I don't even asked them to fix
the mess, only to add an alias name to either distribution. The answer was
"won't do it".

Having said that, I used Glib in order to do things the Ada standard
library does wrong. Its directories (devices, file system) and OS calls
packages are designed OS-dependent, which is unacceptable. Glib by all its
drawbacks at least tries to make this right.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2011-08-20  9:23 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-19 16:24 StdCall and pragma Import_Function Felix Krause
2011-08-19 16:51 ` Dmitry A. Kazakov
2011-08-19 17:07   ` Felix Krause
2011-08-19 18:58     ` Dmitry A. Kazakov
2011-08-19 19:23       ` Felix Krause
2011-08-19 19:43         ` Dmitry A. Kazakov
2011-08-19 20:07           ` Felix Krause
2011-08-19 20:37             ` Dmitry A. Kazakov
2011-08-19 20:45             ` Jeffrey Carter
2011-08-21 18:25               ` Felix Krause
2011-08-20  8:04           ` Georg Bauhaus
2011-08-20  9:23             ` Dmitry A. Kazakov [this message]
2011-08-19 17:26   ` Adam Beneschan
2011-08-19 17:38     ` Felix Krause
2011-08-19 18:10 ` Jeffrey Carter
2011-08-19 18:37   ` Felix Krause
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox