[ofw] uDAT calling convention changes - how bad does this hurt?

Fab Tillier ftillier at windows.microsoft.com
Wed Aug 15 18:03:41 PDT 2007


Do the DAT consortium API prototypes explicitly declare any calling
convention?  If they rely on defaults, it could make things ugly fast!
'default' calling convention can be set as a compiler flag so without
explicit declaration, the DAT API prototypes aren't __cdecl, even if you
use the headers and libraries from a single source.  The only way to
solve this reliably is to explicitly declare the calling convention, one
way or another.

So I say, if you need __cdecl, make the change.  If the DAT headers
don't specify either way, they need to change.  At that point, pick
whatever calling convention you feel is appropriate.

-Fab

-----Original Message-----
From: ofw-bounces at lists.openfabrics.org
[mailto:ofw-bounces at lists.openfabrics.org] On Behalf Of Smith, Stan
Sent: Wednesday, August 15, 2007 4:21 PM
To: ofw at lists.openfabrics.org
Subject: [ofw] uDAT calling convention changes - how bad does this hurt?


Sadly it has come to my attention that the openib-windows DAT header
files are out of sync with the DAT consortium 1.1 header files.
Specifically in the arena of API calling convention differences which
induce incompatibilities when building applications using DAT consortium
header files with openib-windows libraries. Yes I realize this is less
than desirable personal hygiene but nonetheless, it should work.

The difference is the openib-windows DAT api prototypes are defined as
__stdcall where the DAT consortium DAT api prototypes are default
Windows C/C++ compiler calling convention __cdecl.

In order to straighten this out, I'm proposing the openib-windows DAT
api definitions change to be the default MS compiler calling convention
(__cdecl).

Bottom line - running a current DAT application with new DAT/DAPL
libraries may not work without a recompile of your application.

How many folks can not live with this change?

Stan.
_______________________________________________
ofw mailing list
ofw at lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw



More information about the ofw mailing list