PortAudio / portaudio

PortAudio is a cross-platform, open-source C language library for real-time audio input and output.
Other
1.43k stars 296 forks source link

API calling convention and pack #58

Open PortAudio-admin opened 17 years ago

PortAudio-admin commented 17 years ago

Issue created by Anonymous on Assembla

[Trac: Originally reported by jf_menard on 2007-09-07 04:33:35]

[Trac: Originally assigned to jf_menard]

Use a define for API calling convention. This is required if static-linked with another calling convention.

Declare a struct packing in public headers. Required to ensure consistent packing across projects (in VS2005).

We are reviewing this ticket on the mailing list. A summary of discussions is here: http://www.portaudio.com/trac/wiki/StructPackingAndApiCallingConvention

PortAudio-admin commented 16 years ago

Comment by Anonymous on Assembla

[Trac: Originally commented by jf_menard on 2007-09-07 04:33:35]

Someone should commit this patch to SVN.

PortAudio-admin commented 13 years ago

Comment by @RossBencina

I'm not sure the PA_API_CC macro format used here is sufficent to cover calling conventions on all platforms. I've seen other calling convention macros that take the return types as parameters. Also need to resolve how this interacts with doxygen.

The question is not so much with whether we need what this patch does -- it's whether this patch does it the best way for all platforms.

Should review other code bases for guidance. (python libs?)

PortAudio-admin commented 13 years ago

Comment by @RossBencina

The patch included a number of unrelated doc comment typo corrections. These have now been committed as r1594.

PortAudio-admin commented 13 years ago

Comment by @RossBencina

Recent list discussion have identified the following issues and open questions (not sure this is exhaustive yet):

PortAudio-admin commented 12 years ago

Comment by @RossBencina

TRAC migration: propagating ticket status from TRAC

PortAudio-admin commented 12 years ago

Comment by @RossBencina

Ticket58.patch.txt

Ticket58.patch (26.8 KB) - added to Trac by jf_menard 4 years ago: SVN patch for ticket #58

RossBencina commented 3 years ago

Related #285

MichalPetryka commented 3 years ago

This would also be helpful when binding to languages that require you to specify the calling convention when calling a method in a shared library (such as C#), cause without that bindings have to assume the calling convention compilers default to.