Timur's CppCon presentation

Are there no compiler macro to check for C++11? I just checked this thread: http://stackoverflow.com/questions/5047971/how-do-i-check-for-c11-support that looks possible (provided you have time/priority for this)

Hi,

we already have all those compiler macros to check for C++11 language features in Juce: 

JUCE_COMPILER_SUPPORTS_LAMBDAS, JUCE_COMPILER_SUPPORTS_MOVE_SEMANTICS, etc.

We don't have one "C++11" check because Visual Studio supports a different subset of C++11 features than clang or gcc depending on the version. So in the cross-platform world it makes more sense to check for availability of the individual features rather than just the C++ standard level.

However, std::atomic is *not* a C++11 language feature, it is a class in the C++11 *standard library*. So in order to find out in the code whether that type is available, one could do some TMP trickery, or maybe check for the standard library you are compiling your code with (e.g. libc++ has std::atomic), for example explained here: 

http://stackoverflow.com/questions/31657499/how-to-detect-stdlib-libc-in-the-preprocessor

In JUCE, we simply don’t use those parts of the standard library as long as we have to support C++98, so there’s no need for such a macro.

They should give the new Star Wars movie a run for its money! I'm sorry I can't attend in person, but I'm very very happy that the streams will be made available at some point. Thank you Google. Definitely the first time I've ever said that..

excellent watch

I would like to know what is the difference between std::atomic and juce::Atomic. I mean, I have seen Timur using the first one a lot in his tutorials about lock-free structures, and I wonder why he is not using juce one instead. Any idea ?

Maybe because it was at the cpp-con and not the juce-summit?  ;-) SCNR