Help - Search - Members - Calendar
Full Version: Contradiction in development readme?
Hydrogenaudio Forums > Hosted Forums > foobar2000 > Development - (fb2k)
Myria
QUOTE
Exception use

Most of API functions use C++ exceptions to signal failure conditions.


QUOTE
It is important that all function parameters used by virtual methods of services are cross-DLL safe (do not depend on compiler-specific or runtime-specific behaviors, so no unexpected behaviors occur when calling code is built with different compiler/runtime than callee).


C++ exceptions are the epitome of compiler-specific behaviors. It's not really possible in Windows for C++ exceptions to be compatible across modules unless both sides are compiled using the same compiler.

Am I missing something?

EDIT: Added quote from exception part.
iscaryoth
QUOTE(Myria @ Mar 1 2008, 21:36) *
C++ exceptions are the epitome of compiler-specific behaviors. It's not really possible in Windows for C++ exceptions to be compatible across modules unless both sides are compiled using the same compiler.

Am I missing something?

EDIT: Added quote from exception part.


Yes, it was said, that plugins for foobar2000 are made only using Visual Studio, because class specifics (vtables, and such) are also not compatible across different compilers (VC++ / GCC).
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.