Re: Tiger Build Warnings
Re: Tiger Build Warnings
- Subject: Re: Tiger Build Warnings
- From: Ben Cox <email@hidden>
- Date: Thu, 23 Jun 2005 22:04:58 -0400
On Jun 23, 2005, at 1:28 PM, Steve Checkoway wrote:
How can it expect a particular vtable layout? It seems to me that
that could change with a different compiler version. Also,
depending on the vtable layout seems like a bad idea but I guess
for binary compatibility, there isn't much one can do.
And Herbie Robinson wrote:
Exactly. The COM interfaces should be coded in C if COM expects a
particular format. Isn't that why IOKit objects are done that way?
If you accept certain restrictions, a fixed vtable layout is exactly
what you get, still coding in C++. On Windows, COM is indeed an
object model based first and foremost on binary compatibility /
interoperability, and compilers that don't layo out the vtable in the
correct format are not invited to the COM party. (I am not aware
that there are any such unwelcome compilers, though. I'm also not
sure how much of the COM binary compatibility ethic has made it
across into the Mac component manager, but I would suspect that was
the motivation for using the model. I was a little surprised to find
COM stuff in the Mac dev kit documentation, but it makes sense.) I
encourage you to read up on COM details if you're curious/dubious.
This book is a good one:
<http://www.amazon.com/exec/obidos/asin/0201634465>
But I think we're now straying pretty far from CoreAudio, so if you
want to discuss it further, I'd be happy to talk more off-list about it.
__
Ben Cox <email@hidden>
http://www.djehuti.com
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden