fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] FluidSynth and glib


From: Tom M.
Subject: Re: [fluid-dev] FluidSynth and glib
Date: Fri, 6 Oct 2017 22:21:26 +0200

Not really. It's not done by simply switching to a C++ compiler. The data types should be converted to object-oriented ones and the checking-every-functions-return-value-mentality should be rethought. Usage of STL containers would need to be considered in order to unleash C++ whole power. And we would still need a C abstraction layer for every public API-header to allow fluidsynth to be linked according to the C linkage spec. This is a pretty expensive job when done correctly.

One might think about using C++11 only as an OSAL (threading, atomics, mutexes, condition_vars): https://github.com/paulsapps/fluidsynth/commit/1cb572fcca0a09107d85b066c1a55bd55b7574ab

Dont know about the portability of std c++11 libraries on other than Linux or Win. Also one would somehow need to get C++11's fixed width integers to work with C89 code (not sure if that's possible at all).

Esp. getting atomics to work is non trivial.

...one might think about using some mixture of C11 / C++11, i.e. C11 for the atomics and cstdint part, C++11 for the threading part. Although C11 atomics seem to optional as well.


Tom


2017-10-06 18:48 GMT+02:00 Philippe Simons <address@hidden>:
damn! and I guess moving to C++11 is not an option

On Fri, Oct 6, 2017 at 5:55 PM, Tom M. <address@hidden> wrote:
This is for C++11 only.

And as I just learned: The threading part of C11 is optional, which is very disappointing. Because it means that even though clang and gcc claim to be feature complete, glibc is (still) lacking support for the IMO most important part of C11: Threading ( see https://sourceware.org/bugzilla/show_bug.cgi?id=14092 )

Thus it is questionable if we can ever move to C11, even if one day also glibc has C11 Thread support.


Tom


2017-10-06 16:56 GMT+02:00 Philippe Simons <address@hidden>:
According to https://msdn.microsoft.com/en-us/library/hh567368.aspx

VS2015 should have decent enough C11 support for threads and atomics.
Or is only for C++11 ?

Philippe

_______________________________________________
fluid-dev mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/fluid-dev



_______________________________________________
fluid-dev mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/fluid-dev



_______________________________________________
fluid-dev mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/fluid-dev



reply via email to

[Prev in Thread] Current Thread [Next in Thread]